Linux常用命令——吐血整理

如有问题欢迎指正

文章目录

      • su 命令
    • 文件处理命令
      • cd
      • ls
      • pwd
      • mkdir
      • touch
      • cp
      • mv
      • rm
      • cat
      • more
      • head
      • tail
      • ln
    • 帮助命令
      • man
      • help
      • 命令名 --help
    • 文件搜索命令
      • find
      • grep命令
      • which
      • whereis
    • 压缩解压缩命令
      • gzip
      • bzip2
      • zip
      • tar
    • 系统关机命令
    • 一些好用的快捷键

su 命令

switch user
作用:切换用户身份
语法:su [选项] 用户名
- 表示用户的环境变量一起切换
-c 仅执行一次命令,而不切换用户身份
$ su – root


文件处理命令

文件或目录的CRUD

cd

英文:change directory
命令路径:内部命令
执行权限:所有用户
作用: 切换目录
语法:cd [目录]
/ 切换到根目录
. . 回到上一级目录
. 当前目录
-显示并打开到上一次操作的目录
~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)

ls

英文:list
命令路径:/bin/ls
执行权限:所有用户
作用:显示目录文件
语法:ls [-alrRd] [文件或目录]
-a all 显示所有文件,注意隐藏文件,特殊目录.和. .
-l(long) 显示详细信息
-R(recursive) 递归显示当前目录下所有目录
-r (reverse) 逆序排序
-t(time) 按修改时间排序(降序)
ll 相当于 ls –l

pwd

英文:print working directory
命令路径:/bin/pwd
执行权限:所有用户
作用:显示当前工作目录
语法:pwd [-LP]
 -L 显示链接路径,当前路径,默认
 -P 物理路径
#pwd [-P]

mkdir

英文:make directories
命令路径:/bin/mkdir
执行权限:所有用户
作用:创建新目录
语法:mkdir [-p] 目录名
 -p 父目录不存在情况下先生成父目录 (parents)
eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录。

touch

命令路径:/bin/touch
执行权限:所有用户
作用:创建空文件或更新已存在文件的时间
语法:touch 文件名
eg:touch a.txt b.txt
touch {a.txt,b.txt} 同时创建多个文件
创建带空格的文件 eg:touch “program files” 在查询和删除时也必须带双引号
注意:生产环境中,文件名,一定不要加空格

cp

英文:copy
命令路径:/bin/cp
执行权限:所有用户
作用:复制文件或目录
语法:cp [–rp] 源文件或目录 目的目录
 -r -R recursive 递归处理,复制目录
 -p 保留文件属性 (原文件的时间不变)
eg:
1,相对路径 cp –R /etc/* . 或cp –R …/aaa …/…/test/
2,,绝对路径 cp –R /ect/service /root/test/aa/bb

mv

英文:move 命令路径:/bin/mv 执行权限:所有用户
作用:移动文件或目录、文件或目录改名
语法:mv 源文件或目录 目的目录

rm

英文:remove 命令路径:/bin/rm 执行权限:所有用户
作用:删除文件
语法: rm [-rf] 文件或目录
-r (recursive)删除目录,同时删除该目录下的所有文件
-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认

注意:工作中,谨慎使用rm –rf 命令
扩展点:删除乱码文件
一些文件乱码后使用rm -rf 依然无法删除
此时,使用ll -i 查找到文件的inode节点
然后使用find . -inum 查找到的inode编号 -exec rm {} -rf ;
就能顺利删除了

cat

英文:concatenate 命令路径:/bin/cat 执行权限:所有用户
作用:显示文件内容
语法:cat [-n] [文件名]
  -A 显示所有内容,包括隐藏的字符
 -n 显示行号
eg:cat /etc/services

more

命令路径:/bin/more 执行权限:所有用户
作用:分页显示文件内容
语法:more [文件名]
空格或f 显示下一页
Enter键 显示下一行
q或Q 退出

head

命令路径:/usr/bin/head 执行权限:所有用户
作用:查看文件前几行(默认10行)
语法:head [文件名]
  -n 指定行数
eg:head -20 /etc/services
head –n 3 /etc/services

tail

命令路径:/usr/bin/tail 执行权限:所有用户
作用:查看文件的后几行
语法:tail [文件名]
 -n 指定行数
 -f (follow) 动态显示文件内容
获取一个大文件的部分文件,可使用head或tail命令
head -n 100 /etc/services >config.log

ln

英文: link 命令路径:/bin/ln 执行权限:所有用户
作用:产生链接文件
语法:
ln -s [源文件] [目标文件] 创建软链接 源文件 使用 绝对路径
ln [源文件] [目标文件] 创建硬链接

eg:ln -s /etc/service ./service.soft
创建文件/etc/service的软链接service.soft
eg:/etc/service /service.hard
创建文件/etc/service的硬链接/service.hard
软连接类似于windows下的快捷方式
软连接文件格式:
lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service -> /etc/services
1 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。
13链接文件的长度
格式解析(特征):
1, 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx
2,-> 箭头指向到源文件
真正的权限取决于对源文件的权限
时间值为创建软连接的时间
软连接可以跨文件系统生成
硬链接特征
1,相当于 cp -p +同步更新
2,通过i节点识别,与源文件有相同的inode节点
3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)
4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
删除软连接
rm -rf symbolic_name

帮助命令

man

英文:manual 命令路径:/usr/bin/man 执行权限:所有用户
作用:获取命令或配置文件的帮助信息
语法:man [命令/配置文件]
eg:man ls man services
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。
使用/加上关键的参数可直接定位搜索, n 查找下一个,shift+n 查找上一个
eg: /-l 直接查看-l的介绍

扩展:man的级别 (帮助文档的类型, 了解1 5即可)
man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)
1是命令,5是配置文件 man优先显示命令,可指定帮助类型
eg:man 5 passwd (5代表配置文件级别)

help

help 查看shell内置命令的帮助信息
eg:help cd
内置命令,使用whereis,which,man都不能查看
type 命令 查看内部命令还是外部命令

命令名 --help

命令名 --help 列举该命令的常用选项
eg: cp --help

文件搜索命令

find

命令路径:/bin/find 执行权限:所有用户
作用:查找文件或目录
语法:find [搜索路径] [匹配条件]
如果没有指定搜索路径,默认从当前目录查找
find命令选项

-name 按名称查找 精准查找
eg:find /etc -name “init” 在目录/etc中查找文件init

-iname 按名称查找
find查找中的字符匹配:
  *  :匹配所有
  ?:匹配单个字符
eg:find /etc -name “init???” 在目录/etc中查找以init开头的,且后面有三位的文件
模糊匹配的条件,建议使用单引号或双引号括起来。如果*被转义,可使用 单双引号括住查询条件,或者使用*。
eg: # find . –name *g

-size 按文件大小查找
以block为单位,一个block是512B, 1K=2block +大于 -小于 不写是等于
eg:find /etc -size -204800 在etc目录下找出大于100MB的文件
100MB=102400KB=204800block

-type 按文件类型查找
f 二进制文件 l 软连接文件 d 目录 c 字符文件
eg: find /dev -type c

find查找的基本原则
占用最少的系统资源,即查询范围最小,查询条件最精准
eg:
如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/

grep命令

命令路径:/bin/grep 执行权限:所有用户
作用:在文件中搜寻字串匹配的行并输出
语法:grep [-cinv] ‘搜寻字符串’ filename
选项与参数:
  -c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)
  -i :忽略大小写,所以大小写视为相同
  -n :显示匹配行及行号
  -v :反向选择,显示不包含匹配文本的所有行。
eg:grep ftp /etc/services
eg:#grep -v ^# /etc/inittab 去掉文件行首的#号
eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号
eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次

which

命令路径:/usr/bin/which 执行权限:所有用户
作用:显示系统命令所在目录(绝对路径及别名)
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
# which ls
alias ls=‘ls --color=auto’
/bin/ls
搜索不存在的命令会报错:
# which zs
/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)

whereis

命令路径:/usr/bin/whereis
执行权限:所有用户
作用:搜索命令所在目录 配置文件所在目录 及帮助文档路径
eg: which passwd 和 whereis passwd
eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd

压缩解压缩命令

gzip

英文:GNU zip 命令路径:/bin/gzip 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.gz
gzip只能压缩文件,不能压缩目录;不保留原文件
语法:gzip 文件
-d 将压缩文件解压(decompress)

解压使用gzip –d或者 gunzip

bzip2

命令路径:/usr/bin/bzip2 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.bz2
语法:bzip2 [-k] [文件]
-k:产生压缩文件后保留原文件(压缩比高)
-d 解压缩的参数(decompress)
解压使用bzip2 –d或者 bunzip2

zip

命令路径:/usr/bin/zip 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.zip
语法:zip 选项[-r] [压缩后文件名称] [文件或目录]
-r压缩目录
eg:zip services.zip /etc/services 压缩文件;
zip -r test.zip /test 压缩目录
如果不加-r选项,压缩后的文件没有数据。
解压使用unzip

tar

命令路径:/bin/tar 执行权限:所有用户
作用:文件、目录打(解)包
语法:tar [-zcf] 压缩后文件名 文件或目录

-c 建立一个压缩文件的参数指令(create),后缀是.tar
-x 解开一个压缩文件的参数指令(extract)
 	-z 以gzip命令压缩/解压缩  
-j  以bzip2命令压缩/解压缩 
-v 压缩的过程中显示文件(verbose)
-f file 指定文件名,必选项

1, 单独的打包 ,解包 tar –cf tar –xf
2, 打包之后,进行压缩 gzip bzip2
3, 一步到位 tar –zcvf tar -zxvf

tar -cf -xf 单独 压缩 解压缩
tar -z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)
tar -j 以bzip2打包目录并压缩 文件格式.tar.bz2
eg:tar -zcvf dir1.tar.gz dir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz
tar -zxvf dir1.tar.gz -C(大写的) /root 解压到指定的/root目录
eg: tar -cvf bak.tar . 将当前目录的文件打包为bak.tar
eg: tar -xvf bak.tar 解压
eg: tar -zcvf bak.tar.gz bak.tar 或 gzip bak.tar 使用gzip将打包文件bak.tar压缩为bak.tar.gz
eg: tar -jcvf bak.tar.bz2 bak.tar 或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2
eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中®
eg:tar -cjvf test.tar.bz2 test 生成test.tar.bz2的压缩文件
eg:tar -xjf test.tar.bz2 解压
最常用: tar + gzip

tar –zcvf 压缩    
tar –zxvf  解压

补充:
1,文件路径, 压缩包带文件路径
2,源文件是保留的,不会被删除

系统关机命令

shutdown [选项] 时间
选项: -c: 取消前一个关机命令
  -h:关机
  -r:重启
eg:
 shutdown -h now 立即关机
 shutdown -h 20:30 定时关机
其他关机命令 halt poweroff init 0
其他重启命令 :
 reboot 重启系统
 reboot -h now 立即重启
 init 6
注意:生产环境中,关机命令和重启命令谨慎执行。

一些好用的快捷键

ctrl + c(停止当前进程)
ctrl + z 挂起当前进程,放后台
ctrl + r(查看命令历史) history
ctrl + l(清屏,与clear命令作用相同)
方向箭头 上 下 可以查看执行过的命令
ctrl + a 行首 ctrl + e 行尾
ctrl + k 清除 ctrl+ w 清除单词

如有问题欢迎指正

你可能感兴趣的:(linux)