Linux常用基本命令大全
ls
ls -a 显示指定目录下所有目录与文件,包括隐藏文件 -l 以列表的方式显示文件的详细信息 -h 配合-l以人性化的方式显示文件大小 隐藏文件和隐藏文件夹是用来配置应用的。
通配符的使用
- *-----代表任意个数个字符
- ?-----代表任意一个字符,至少一个
- [] ------ 表示可以匹配字符族中的任意一个
- [abc]----匹配a、b、c中的任意一个
- [a-f] ------匹配从a到f范围内的任意一个字符
cd change directory 的缩写,其功能为更改当前的工作目录,也是用户最常用的命令之一。
- cd 回到家目录(/home/用户目录)
- cd~ 回到家目录(/home/用户目录)
- cd .
- cd ..
- cd - 可以在最近两次目录之间来回切换
touch
创建文件或修改文件时间 如果文件不存在,可以创建一个空白文件 如果已经存在,可以修改文件的末次修改日期
mkdir
- mkdir -p 递归创建目录
- 新建目录的名称不能与当前目录中已有的目录或文件同名
rm
删除文件或目录 使用rm命令要小心,因为文件删除后不能恢复 -f 强制删除,忽略不存在的文件,无需提示 -r 递归地删除目录下的内容,删除文件夹时必须加此参数
tree
- tree[目录名] 以树状图列出文件目录结构
- tree -d 只显示目录
-
cp
cp -f 已经存在的文件直接覆盖 -i 覆盖前提示 -r 递归复制
mv
-i 覆盖文件前提示
查看文件内容
cat concatenate , 查看文件内容、创建文件,文件合并、追加文件内容等功能,整体显示
more more 分屏显示文件内容分页显示
grep搜索文本文件名 grep 搜索文本文件内容
cat -b 对非空输出行编号 -n 对输出的所有行编号 more 操作键 功能 空格键 显示手册页的下一屏 Enter键 一次滚动手册页的一行 b 回滚一屏 f 前滚一屏 q 退出
grep
- 1.Linux 系统中grep 命令是一种强大的文本搜索工具
- grep允许对文本文件进行模式查找,所谓模式查找,又被称为正则表达式,在就业班详细讲解。
- -n 显示匹配行及行号
- -v 显示不包括匹配文本的所有行(相当于求反)
- -i 忽略大小写
- 2.常用的两种模式查找
- ^a 行首,搜索以a开头的行
- ke$ 行尾,搜索以ke结束的行
echo
- 会在终端显示参数指定的文字,通常会和重定向联合使用。
- 重定向>和>>
- Linux允许将命令执行结果重定向到一个文件
- 将本应显示在终端上的内容 输出/追加到指定文件中
- 其中
- >表示输出,会覆盖文件原有的内容
- >>表示追加,会将内容追加到已有文件的末尾
- ls -hl > a 把ls显示的信息显示到文件夹中
管道 |
- Linux允许将一个命令的输出可以通过管道做为另一个命令的输入
- 可以理解显示生活中的管子,管子的一头塞东西进去,另一头取出来,这里|的左右分为两端,左端塞东西(写),右端取东西(读)
- 常用的管道命令又:
- more :分屏显示内容
- grep : 在命令执行结果的基础上查询指定的文本。
远程管理常用命令
关机
shutdown 一分钟之后关闭电脑(不带任何参数)
shutdown 选项 时间 shutdown 关机/重新启动
-r 重新启动
-c 取消关闭
常用命令实例
shutdown -r now 立刻重启
shutdown now 立刻关机
shutdown 20:25 20:25关机
shutdown +10 系统再过十分钟后关机
查看或配置网卡信息
ifconfig
ping
本地回环用于测试网卡是否正常
ifconfig | grep inet
提示: 一台计算机中可能会有一个物理网卡和多个虚拟网卡,在Linux中物理网卡的名字通常以ensXX表示。
127.0.0.1 被称为本低回环/环回地址,一般用来测试本机网卡是否正常
远程登陆和复制文件
ssh
在linux中SSh是非常常用的工具,通过SSH客户端我们可以连接到运行了SSh服务器的远程主机上
数据传输时加密的,可以防止信息泄露
数据传输是压缩的,可以提高传输速度
scp
就是secure copy,在Linux下用来远程拷贝文件的命令
它的格式与ssh基本相同,需要注意的是在指定端口时用的时-P而不是小写的
scp -P port 01.py user@remote:Desktop/01.py //如果后面不是绝对路径,则用户的家目录作为参考路径
scp -r demo user@remote:Desktop //-r可以传送文件
scp 这个终端命令只能在Linux或者UNIX系统下使用
如果在Windows中,可以安装PuTTY,使用pscp命令行工具或则安装FileZilla使用FTP进行文件传输
域名是ip地址的别名
域名:例如www.baidu.com
端口号:通过端口号可以找到计算机上运行的应用程序
SSH服务器的默认端口号是22,如果是默认端口号,在连接的时候可以省略
01 ssh服务器,22
02 Web服务器 80
03 HTTPS 443
04 FTP服务器,21
ssh客户端的简单使用
ssh -p port user@remoteIP
Windows 下SSH客户端的安装
Putty http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
XShell http://xshellcn.com
service iptables stop
ls -l 以列表的形式显示
用户 组用户 其他用户
权限, 第一个字符如果如果是d表示目录
硬链接,通俗的讲,就是有多少种方式,可以访问到当前目录/文件
对于文件来说 硬链接数只有一个
但对于文件夹来说,最少有两个,与当前文件夹下的子目录有关
拥有则,家目录下 文件/目录 的拥有着通常都是当前用户
组,在Linux中,很多时候,会出现组名和用户名相同的情况,后面会讲。
大小
时间
名称
chmod +/- rwx 文件夹|目录
chmod -rw 01.py
在终端命令中如果需要争对这个目录而执行终端命令,我们则需要给这个目录可执行权限。
可读权限 显示目录的内容
可写权限 修改目录的内容
超级用户
Linux系统中的root账号通常用于系统的维护和管理,对操作系统的所有资源具有访问权限
在大多数版本的Linux中,都不推荐直接使用账号登陆系统
在Linux安装过程中,系统会自动创建一个用户账号,而中国默认的用户就称为“标准用户”
sudo
su是substitute user 的缩写,表示使用另一个用户的身份
sudo命令用来以其他身份来执行命令,预设的身份为root
用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码
组管理终端命令
groupadd 组名 添加组
groupdel 组名 删除组
cat /etc/group 确认组信息
chgrp 组名 文件/目录名 修改文件/目录的所属组
chgrp -R 组名 文件/目录名 递归修改文件/目录所属组
创建用户/设置密码/删除用户
useradd -m -g 组 新建用户名 作用:添加新用户s
-m 自动建立用户家目录
-g 指定用户所在的组,否则会建立一个和同名的组
passwd 用户
查看用户信息
id [用户名] 查看用户UID和GID信息
who 查看当前所有登陆的用户列表
whoami 查看当前登陆用户的账户名
uid(用户ID) gid(组ID) 组(包含主组和附加组)
id lisi
cat -n /etc/passwd | grep lisi:
50 lisi:x:1002:1001: :/home/lisi:
行号 用户名:有密码:uid:gid: :家目录路径:
cat -n /etc/group | grep python
python:x:1000:
sudo:x:27:python
cdrom:x:24:python
passwd文件
/etc/passwd文件按存放的是用户的信息,由6个分号组成的7个信息,分别是
1. 用户名
2.密码(x,表示加密的密码)
3.UID(用户标识)
4.GID(组标识)
5. 用户全名或本地账号
6. 家目录
7.登陆使用的Shell,就是登陆之后,使用终端命令,ubuntu默认是dash
who
python tty7 2017-05-10(上一次开机的时间) 09:29(:0)
python pts/18 2018-10-10 02:35(上一次开机的时间) (172.16.140.133)
usermod
usermod 可以用来设置用户的主组/附加组和登陆Shell,命令格式如下:
主组:通常在新建用户时指定,在etc/passwd的第4列GID对应的组
附加组:在etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限
提示:设置了用户的附加组之后,需要重新登陆才能生效!
#修改用户的主组(passwd中的GID)
usermod -g 组 用户名
#修改用户的附加组
usermod -G 组 用户名
#修改用户登陆Shell
usermod -s /bin/bash
指定完/bin/bash路径后,会在/etc/passwd 里面组信息的冒号后面添加/bin/bash,假如没有指定,默认为/bin/dash.
注意:默认使用useradd添加的用户是没有权限使用sudo以及root身份执行命令的,可以使用以下命令,将添加到sudo附加组中
usermod -G sudo 用户名
sudo usermod -G sudo z hangsan
which(重要)
/etc/passwd 是用于保存用户信息的文件 ,指的是文件并不能执行。
/usr/bin/passwd 用于修改用户密码的程序
which 命令可以查看命令所在的位置,例如
which passwd
/usr/bin/passwd
ls -l /usr/bin/passwd -rwsr-xr-x 1 root root 52256 5 月 4 2017 /usr/bin/passwd
which ls
ls -l /usr/bin/ls
which useradd
/usr/sbin/useradd
bin 和 sbin
在Linux中,绝大部分可执行文件都是保存在/bin(binary)是二进制执行文件的目录,主要用于具体应用
/bin (binary)是二进制执行文件目录,主要用于具体应用
/sbin (system binary) 是系统管理员专用的二进制代码存放目录,主要用于系统管理
/usr/bin (user commands for applicatons)后期安装的一些软件
/usr/sbin(super user commands for applictions)超级用户的一些管理程序
切换用户
su - 用户名 切换用户,并且切换目录,-可以切换到用户家目录,否则保持位置不变。
su 不接用户名,可以切换到root
chown 修改拥有者 chown 用户名|目录名
chgrp 修改组 chgrp -R 组名 文件名|目录名
chmod 修改权限 chmod -R 755 文件名|目录名
目标
cal 查看当前月的日历
cal -y 显示一年的日历
date 查看当前的系统时间
磁盘信息
df -h (disk free) 显示磁盘剩余空间
du -h [目录名] disk usage 显示目录下的文件大小
-h 以人性化的方式显示大小
进程信息
ps aux (process status)查看进程的详细信息
top 动态显示运行中的进程
kill [-9] 进程代号 终止指定代号的进程
参数含义
a --- 显示终端上的所有进程,包括其他用户的进程
u ---显示进程的详细状态
x --- 显示没有控制终端的进程
bash默认使用的shell
其他命令
查找文件
find find [路径] -name "*.py" 查找指定路径下的扩展名.py的文件,包括子目录
如果省略路径,表示当前文件夹下查找
之前学习的通配符,再使用find命令时同时可用
有关find的高级使用。
软连接
ln ln -s 被连接的源文件链接文件 建立文件的软链接,用通俗的方式讲 似于Windows下的快捷方式。
注意:1. 没有 -s 选项建立的是一个硬链接文件。两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
2. 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,任然能够正常使用。
演练目标
1. 将桌面目录下的01.py移动到 demo/b/c目录下
2.在桌面目录下新建01.py的软连接 FirstPython
分别使用相对路径和绝对路径建立FirstPython的软链接
3.将FirstPython 移动到demo目录下,对比使用相对路径和绝对路径的区别。
打包和压缩
tar
软件安装
apt-get
硬链接简介(知道)
在使用ln创建链接时,如果没有-s选项,会创建一个硬链接,而不是软连接
硬链接演练
1.在~/Desktop/demo目录下建立~/Desktop/demo/b/c/01.py的硬链接01_hard
2.在使用ls -l查看文件的硬链接数(硬链接--有多少种方式可以访问文件或者目录)
3.删除 ~/Desktop/demo/b/c/01.py,并使用tree来确认demo目录下的三个链接文件
文件名和文件的数据时分开储存的。
软链接:快捷方式
硬链接:大名和小名的关系
打包压缩
Windows rar
Mac zip
Linux tar.gz
tar 是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,不负责压缩。
打包文件
ta -cvf 打包文件名.tar 打包的文件/路径。。。
解包文件
tar -xvf 打包文件.tar
c 生成档案文件,创建打包文件
x 解开档案文件
v 列出归档解档的详细过程,显示进度
f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
gzip
tar与gzip命令结合可以使用实现文件打包和压缩
用gzip压缩tar打包后的文件,其扩展名一般用 xxx.tar.gz
tar 命令中有一个选项-z 可以调用gzip,从而可以方便的实现压缩和解压缩的功能
命令格式
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径
tar -zxvf 打包文件.tar.gz
tar -zxcf 打包文件.tar.gz -C目标路径 目录必须存在
bzip2(two) 压缩效果和gzip差不多
tar 与bzip2命令结合可以使用
tar只负责打包,不负责压缩
用bzip2压缩tar打包后的文件,其扩展名一般用xxx.tar.bz2
在tar命令中有一个-j可以调用bzip2,从而可以实现压缩和解压缩的功能
命令格式如下:
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径
tar -jxvf 打包文件.tar.bz2
apt advanced packaging tool
安装
sudo apt install 软件包
卸载
sudo apt remove 软件名
更新已安装的包
sudo apt upgrade
sudo apt install sl
sudo apt install htop
来源:CSDN
作者:日月忽其不淹兮
链接:https://blog.csdn.net/forever_008/article/details/103493647