Linux常用命令
命令格式:命令 【选项】【参数】
一、目录处理命令
-
ls(list)
1.功能:显示指定工作目录下的内容(列出当前工作目录所含的文件及子目录)
2.语法:ls 【选项】目录
3.选项:
-a:显示当前目录下的所有文件及目录,包括隐藏文件(以`·`开头的文件)
-l:显示文件或目录的详细信息(见下表)
列数 | 信息 |
1 | 第一列共10位,第1位表示文档类型,d表示目录,-表示文件,l表示链接文件,d表示可随机存取的设备,如U盘等,c表示一次性读取设备,如鼠标、键盘等。后9位,依次对应三种身份所拥有的权限,身份顺序为:owner、group、others,权限顺序为:readable、writable、excutable。如:-r-xr-x---的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可执行,其他人没有任何权限 |
2 | 第二列表示链接数,表示有多少个文件链接到inode号码 |
3 | 第三列表示拥有者 |
4 | 第四列表示所属群组 |
5 | 第五列表示文档容量大小,单位字节 |
6 | 第六列表示文档最后修改时间,注意不是文档的创建时间 |
7 | 第七列表示文档名称,以点(.)开头的是隐藏文档 |
-d:显示目录本身信息,而不显示其下的文件信息,一般搭配-l选项使用
-h:人性化显示信息,一般搭配-l选项使用
-i:显示文件的inode号
4.例子:
ls -al /etc
ls -lhd /root
ls -i /etc/services
-
mkdir(make directory)
1.功能:创建一个空目录,可同时创建多个目录
2.语法:mkdir 【选项】目录
3.选项:
-p:递归建立所需目录
4.例子:
mkdir -p /tmp/test/C
-
cd(change directory)
1.功能:切换当前工作目录(“~”表示home目录,“.”表示当前目录,“..”表示当前目录的上一级目录)
2.语法:cd 【目录】
3.选项: 无
4.例子:
cd ~
cd .
cd ..
cd /tmp/test/C
-
pwd(print working directory)
1.功能:显示当前工作目录的绝对路径
2.语法:pwd 【选项】
3.选项:
-P:显示确实路径,而不是使用链接路径
4.例子:
pwd -P
-
rmdir(remove empty directory)
1.功能:删除空目录
2.语法:rmdir 【选项】目录
3.选项:
-p:当子目录被删除后使其也成为空目录的话,则顺便一并删除
4.例子:
rmdir -p /tmp/test/C
-
cp(copy)
1.功能:复制文件或目录(支持复制多个文件到指定目录),也可以为文件或目录重命名
2.语法:cp 【选项】目录或目录下文件 目录
3.选项:
-r:复制目录
-p:复制时保留文件属性
4.例子:
cp -p ~/test/test ~/Software/
cp -r ~/test/ /tmp
-
mv(move)
1.功能:移动或剪切文件或目录(支持剪切多个文件到指定目录),也可以为文件或目录更名
2.语法:mv 【选项】目录或目录下文件 目录
3.选项:
-f:强制移动,如果目标文件存在也不进行询问而直接覆盖
4.例子:
mv -f ~/test/test ~/Software/
-
rm(remove)
1.功能:删除文件或目录
2.语法:rm 【选项】目录或目录下文件
3.选项:
-r:递归删除文件或目录
-f:强制删除文件或目录
4.例子:
rm -rf ~/test/test
二、文件处理命令
-
touch
1.功能:创建一个空文件(如果文件名中间有空格记得使用“”括住文件名,否则会创建两个文件)
2.语法:touch 文件名
3..选项:无
4.例子:
touch ~/test/test
-
cat
1.功能:查看文件内容
2.语法:cat 【选项】文件名
3.选项:
-n:显示行号
4.例子:
cat -n ~/test/test
-
tac
1.功能:逆序查看文件内容
2.语法:cat 【选项】文件名
3.选项:
-n:显示行号
4.例子:
tac -n ~/test/test
-
more
1.功能:分页查看文件内容
2.语法:more 文件名
3.操作:
空格/f:一页页翻页
Enter:换行
q/Q:退出
4.例子:
more ~/test/test
-
less
1.功能:分页查看文件内容(可以向上翻页)
2.语法:less 文件名
3.操作:
向上箭头:一行一行向上翻页
PageUp:一页一页向上翻页
/ ...:搜索想要内容(按n可以检索下一个关键词)
4.例子:
less ~/test/test
-
head
1.功能:查看文件前几行内容
2.语法:head 【选项】文件名
3.选项:
-n:规定行数,不规定默认前十行
4.例子:
head -n 6 ~/test/test
-
tail
1.功能:查看文件后几行内容
2.语法:tail 【选项】文件名
3.选项:
-n:规定行数,不规定默认后十行
-f:动态显示文件末尾内容
4.例子:
tail -n 6 ~/test/test
tail -f ~/test/test
-
ln
1.功能:为文件或目录创建链接文件(硬链接或软链接)
2.语法:ln 【选项】目录/链接名
3.选项:
-s:创建软链接,不写默认创建硬链接
4.说明:
软链接 |
1.所有软链接文件的属性均为:lrwxrwxrwx; 2.软链接文件一般没有源文件大,因为它只是一种符号链接; 3.文件信息中会有箭头指向源文件。 |
硬链接 |
1.相当于cp -p操作外加同步更新(与源文件同步); 2.通过i节点识别; 3.不可跨分区使用; 4.不可以对目录创建硬链接。 |
5.例子:
ln -s ~/Software/led.c /tmp/led.soft
ln ~/Software/led.c /tmp/led.hard
ln -s ~/Software /tmp/Software
三、权限管理命令
-
chmod(change the permissions mode of a file)
1.功能:改变文件或目录权限
r | 读权限 | 对文件:可以查看文件内容 | 对目录:可以列出目录下的内容 |
w | 写权限 | 对文件:可以修改文件内容 | 对目录:可以在目录下创建或删除文件 |
x | 执行权限 | 对文件:可以执行文件 | 对目录:可以进入到目录下 |
2.语法:chmod 【选项】权限 文件或目录
3.选项:
-R:递归修改权限
4.说明:
①数字类型权限:r,w,x分别对应数字4,2,1,例如给rw权限则数字为6
eg:chmod 777 ~/Software/led.c
②符号类型权限:u-user,g-group,o-others,a-all;+表示添加权限,-表示去除权限,=表示赋予权限
eg:chmod u+x,a-w ~/Software/led.c
chmod a=rwx ~/Software/led.c
-
chown(change file ownership)
1.功能:改变文件或目录的所有者
2.语法:chown 用户 文件或目录
3.例子:
chown cjc ~/Software/led.c
-
chgrp(change file group ownership)
1.功能:改变文件或目录的所属组
2.语法:chgrp 群组 文件或目录
3.例子:
chgrp classmate ~/Software/led.c
-
umask(the user file-creation mask)
1.功能:显示或设置文件的缺省权限
2.语法:umask 【选项】【参数】
3.选项:
-S:以rwx形式显示新建文件缺省权限
4.例子:
umask -S
四、文件搜索命令
-
find
1.功能:文件搜索
2.语法:find 【搜索范围】【匹配条件】
3.选项及例子:
根据文件名查找 :选项为-name 和 -iname(不区分大小写);文件名中*通配任意字符,?通配任意单个字符
eg:find / -name *init*
find / -iname init???
根据文件大小查找:选项为-size;+n表示大于n个数据块的文件,-n表示小于n个数据块的文件,=n表示等于n个数
据块的文件;在Linux中,1个数据块(存储文件的最小单位)=512字节=0.5K
eg:find / -size +204800
根据文件所有者查找:选项为-user,同理根据所属组查找:选项为-group
eg:find /home -user cjc
根据时间查找:选项有三:①-amin 访问时间(access)②文件属性-cmin(change)③-mmin(modify);这里的时间
单位为minutes
eg:find /etc -cmin -5 //查找5分钟之内文件属性被修改的文件,如果为+5表示5分钟之后文件属性被修改的
文件
-a:两个条件同时满足
eg:find /etc -size +163840 -a -size -204800 //在/etc下查找大于80M且小于100M的文件
-o:两个条件满足一个即可
-exec/-ok 命令 {} \; 对搜索结果执行操作(-exec和-ok的区别是-ok在执行前会一个个询问是否执行,而-exec不会)
eg:find /etc -name inittab -exec ls -l {} \; //在/etc下查找inittab文件并显示其详细信息
根据文件类型查找:选项为-type;f表示文件,d表示目录,l表示软链接文件
eg:find /etc -name init* -a -type f
根据i节点查找:选项为-inum
eg:find . -inum 31531
-
locate
1.功能:在文件资料库中查找文件
2.语法:locate 文件名
3.选项:
-i:不区分大小写查找文件
4.说明:
locate命令不同于find,它不是在某个硬盘上找文件,而是在文件资料库中查找,所以速度比较快。但是它存在的问
题是我们新创建的文件可能不会及时更新到文件资料库中, 这时我们可以使用updatedb来更新资料库。
另外,资料库地址可以这样查看:locate locate,然后在输出信息中可以看到/var/lib/mlocate/mlocate.db,这就
是我们的文件资料库了。
但其实还有一个问题,/tmp目录下的文件不属于文件资料库的收录范围,所以如果我们在/tmp目录下创建了文件
即使updatedb也不会找到文件。
5.例子:
locate inittab
locate -i TeaCHer
-
which
1.功能:查找命令所在目录及其别名信息
2.语法:which 命令
3.选项:无
4.例子:
which ls
-
whereis
1.功能:查找命令所在目录及其帮助文档路径
2.语法:whereis 命令
3.选项:无
4.例子:
whereis ls
-
grep
1.功能:在文件中搜索字串匹配的行并输出该行
2.语法:grep 【选项】【指定字串】【文件】
3.选项:
-i:不区分大小写
-v:排除指定字串
4.例子:
grep mysql /root/install.log
grep -v ^# /etc/inittab //表示输出除行首带#号的行之外的信息
五、帮助信息命令
-
man(manual)
1.功能:获取帮助信息
2.语法:man 命令或配置文件(注意:只需要写配置文件名,不要加它的绝对路径)
3.选项:
1:命令的帮助信息
5:配置文件的帮助信息
如果一个名称既对应命令又对应配置文件,那么man优先显示命令帮助信息,如果想显示配置文件帮助信息,这样
做:man 5 passwd
4.操作:(类似于more和less)
空格:向下翻页
回车:一行一行向下翻
/......:查找指定内容,按n切到下一个所选关键词
改系统日期:man date查看时间格式;修改时间:date 031410272014.18 //2014年3月14日10时27分18秒
5.例子:
man ls
man services
-
whatis和apropos
1.功能:查看命令(whatis)或配置文件(apropos)的简单信息
2.语法:whatis 命令 apropos 配置文件(无绝对路径)
3.例子:
whatis ls
apropos services
-
--help
1.功能:查看命令选项的信息
2.语法:命令 --help
3.例子:
ls --help
-
help
1.功能:查看shell内置命令的帮助信息
2.语法:help shell内置命令
3.例子:
help cd
4.扩展:shell内置命令有哪些?
想多了,我不会都列出来,只需要help一下就可以列出所有内置命令了
-
info
此命令与man大同小异,暂且不表
六、压缩解压命令
tar常用选项
-f:使用归档文件
-c:创建新归档,创建压缩文件
-x:从归档中解出文件,解压缩
-j:使用bzip2压缩格式
-z:使用zip压缩格式
-Z:通过compress指令处理备份文件
-v:打印出命令执行过程
-
.tar
解包:tar -xvf FileName.tar
打包:tar -cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
-
.tar.gz和.tgz
解压:tar -zxvf FileName.tar.gz
压缩:tar -zcvf FileName.tar.gz DirName
-
.tar.bz2
解压:tar -jxvf FileName.tar.bz2
压缩:tar -jcvf FileName.tar.bz2 DirName
-
.tar.bz
解压:tar -jxvf FileName.tar.bz
-
.tar.Z
解压:tar -Zxvf FileName.tar.Z
压缩:tar -Zcvf FileName.tar.Z DirName
-
.zip
解压:unzip Filename.zip
压缩:zip FileName.zip DieName
-
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
-
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
-
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
-
.rar
解压:rar -x FileName.rar
压缩:rar -a FileName.rar DirName
-
.Z
解压:uncompress FileName.Z
压缩:compress FileName
-
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName
-
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
-
.deb
解包:ar -p FileName.deb data.tar.gz | tar zxf -
七、网络配置命令
-
write
1.功能:给用户发送信息,以Ctrl+D保存结束且发送
2.语法:write 用户名(编辑消息写错拿delete删除或者Ctrl+退格键删除)
3.例子:
write cjc
-
wall(write all)
1.功能:给所有用户发送广播信息
2.语法:wall 【message】
3.例子:
wall I love you!!!
-
ping
1.功能:测试网络连通性
2.语法:ping 【选项】IP地址
3.选项:
-c:指定发送次数
4.例子:
ping 192.168.1.156
-
ifconfig(interface configure)
1.功能:查看和设置网络信息
2.语法:ifconfig 网卡名称 IP地址
3.例子:
ifconfig eth0 192.168.0.105
4.ifconfig信息解析:
-
mail
1.功能:查看或发送电子邮件
2.语法:mail 用户名
3.例子:
mail root //给root发邮件,以Ctrl+D保存发送
mail //root接收邮件
help //查看帮助信息
1 //读第一封邮件
h //再次查看邮件
d 1 //删除第一封邮件
q //退出邮件
-
last
1.功能:列出目前与过去登入系统的用户信息
2.语法:last
3.例子:
last
-
lastlog
1.功能:检查某特定用户上次登录的时间
2.语法:lastlog 【选项】用户ID
3.选项:
-u:指定用户ID
4.例子:
lastlog -u 502
-
traceroute
1.功能:显示数据包到主机间的路径
2.语法:traceroute
3.例子:
traceroute www.qq.com
-
netstat
1.功能:显示网络相关信息
2.语法:netstat 【选项】
3.选项:
-t:TCP协议
-u:UDP协议
-l:监听
-r:路由
-n:显示IP地址和端口号
4.例子:
netstat -tlun 查看本机监听的端口
netstat -an 查看本机所有的网络连接
netstat -rn 查看本机路由表
-
setup(RedHat类Linux专有)
1.功能:图形化配置网络
2.语法:setup
3.例子:
setup
接着进行一些想要的网络配置,配好后记得service network restart
-
mount
1.功能:挂载命令
2.语法:mount 【-t 文件系统】设备文件名 挂载点
3.选项:
-t:挂载文件系统
4.例子:
mount -t iso9660 /dev/sr0 /mnt/cdrom
八、关机重启命令
-
shutdown
1.功能:关机或重启
2.语法:shutdown 【选项】时间
3.选项:
-c:取消前一个关机命令
-h:关机
-r:重启
-k:仅提示关机信息,其实不会关机
4.例子:
shutdown -h now
shutdown -h 20:30
shutdown -h +10 //10分钟后关机
shutdown -r now
shutdown -r +30 'This system will reboot'
shutdown -k now 'This system will reboot'
-
其他关机命令
eg:halt poweroff(直接断电) init 0
-
其他重启命令
eg:reboot init 6
说明:系统运行级别(init) /etc/inittab文件中可以修改系统默认运行级别 runlevel查询系统运行级别
0 关机
1 单用户
2 不完全多用户,不含NFS服务
3 完全多用户
4 未分配
5 图形界面
6 重启
-
logout
退出登录命令
九、用户管理命令
-
useradd
1.功能:添加新用户
2.语法:useradd 用户名
3.例子:
useradd cjc
-
passwd
1.功能:设置或修改用户密码(root可以修改任何用户的密码,但用户只能修改自己的密码)
2.语法:passwd 用户名
3.例子:
passwd cjc
-
who
1.功能:查看用户登陆信息
2.语法:who
3.例子:
who
4.说明:
who下边的信息对应:
登录用户名 登录终端(tty本地终端,pts远程终端) 登录时间(登录IP地址)
-
w
1.功能:查看用户详细登陆信息
2.语法:w
3.例子:
w
4.说明:
w下边的信息对应:
linux运行时间 load average: linux负载情况
USER:登录用户名 TTY:登录终端(tty本地终端,pts远程终端)
FROM:登录时间(登录IP地址) WHAT:用户正在执行的命令
LOGIN:登录时间 IDLE:累计多长时间未操作
JCPU和PCPU:登录累计占用CPU时间和运行程序占用CPU时间
十、其他常用命令
-
显示日期与时间:data
-
显示日历:cal
“cal -y”显示当年日历;“cal [month] [year]”显示指定年月日历
-
计算器:bc(运算符号:+加 -减 *乘 /除 ^指数 %取余;bc预设仅输出整数,如果要输出小数,执行指令“scale=number”,此number为小数点位数;quit离开bc的软件环境)
-
检查核心与操作系统位版本:uname -r/-m
-
查看开机启动各项时间:systemd-analyze blame
-
查看所有文件夹:nautilus
-
软件包更新:sudo apt-get update + sudo apt-get upgrade
-
系统运行时间:uptime