Linux 常用指令

  • cd
    • 进入某个目录
    • cd /home                         # 绝对路径,以根目录开头
    • cd yujian                         # 相对路径,不以根目录开头
    • cd ..                                # 返回上级目录
    • cd ../                               # 返回上级目录
    • cd ~                                # 返回当前用户的家目录
    • cd -                                 # 返回上一次所在目录
    • cd .                                 # 返回当前目录(没啥用)
    • cd ./                                # 返回当前目录(没啥用)
  • ls
    • 查看某目录下的所有文件(夹)名
    • -l                                    # 显示详细信息
    • -h                                   # 显示文件大小,带单位,与 -l 连用
    • -a                                   # 显示所有的文件,包含隐藏文件(以 . 开头)
  • ll
    • 查看某目录下的所有文件(夹)的详细信息
    • -rw-rw-r--. 1 yujian yujian    0 Jun 27 01:36 a.txt                   # -表示文件 d表示文件夹  r表示可读(4)w表示可写(2)x表示可执行(1)
    •                                                                                                   第一组(文件的拥有者的权限)第二组(文件所属组的成员的权限)第三组(其他用户的权限)
  • mkdir
    • 创建空文件夹
    • mkdir 文件夹名                                        # 在当前目录下创建一个文件夹
    • mkdir /home/yujian/a                               # 以绝对路径创建文件夹
    • mkdir -p /home/yujian/a/b                        #  同时创建多级目录a b
    • mkdir a b                                                  # 在当前目录下同时创建a 和 b两个文件夹
    • mkdir /home/yujian/{a,b}                          # 在某个文件夹下同时创建a 和 b两个文件夹
    • mkdir .a                                                    # 创建隐藏文件夹
  • touch
    • 创建空文件
    • touch a.txt                                                # 在当前目录下创建一个空文件,若指定了目录,必须保证目录存在
    • touch .a                                                    # 创建隐藏文件
  • gedit
    • (创建并)用记事本的方式打开进行编辑
  • rm
    • 删除文件(夹)
    • rm a.txt                                                    # 删除文件
    • rm -r a                                                     # 递归删除文件夹及其里面的所有文件
    • rm -r *                                                     # 删除当前目录下的所有文件(夹),但是无法删除隐藏文件(隐藏文件只能通过 rm 隐藏文件的名称 进行删除)
  • 命令格式
    • 指令 --help
    • man 指令
  • cp
    • cp 源文件 目标文件                               # 将源文件复制到目标文件下,若目标文件是目录,则会复制到目录下;若目标文件是文件,不管它是否存在,都会成为源文件                                                                的复制本
    • -r                                                            # 递归文件夹
  • mv
    • 移动、重命名
    • 移动目录的话,不用加-r选择,可以直接移动整个文件
    • mv 源文件 目标文件                              # 将源文件移动到目标文件下,若目标文件是目录,则会移动到目录下;若目标文件是文件,目标文件会移动过去,如果文件名                                                                   不一样,则会重命名
  • 重定向
    • 把一个命令输出的结果存入到一个文件里 
    • s >a.txt                                            # 将ls的结果覆盖存入到a.txt文件中,文件有则直接覆盖写入,没有则新建文件并覆盖写入
    • ls >>a.txt                                               # 将ls的结果追加存入到a.txt文件中,文件有则直接追加写入,没有则新建文件并追加写入
  • cat
    • 显示(无法修改)一个文件的内容,当内容很多时,默认会显示最后一部分
    • cat 文件名
    • cat 文件1 文件2                              # 同时显示两个文件的内容
    • cat 文件1 文件2 > 文件3                 # 同时将两个文件的内容凭拼接存入到文件3里面
  • more
    • 当文件内容很长时,会只显示文件内容的第一部分,往下翻可以进行更多内容的查看
    • 按空格键往下翻页    按b键往回翻页  按q键退出  按回车键一行行回车
  • 管道
    • 命令1 | 命令2                                 # 将命令1的输出作为命令2的输入
  • 链接
    • 软连接(符号链接) 
      • ln -s 源文件(夹)  链接名称         
      • 软连接比较傻,当源文件与链接不在同一目录下时,由于软连接只会记住源文件的地址名称,所以源文件要写绝对路径,不然链接会找不到它的。
      • 若源文件消失,链接会因为找不到而失效
      • 若源文件被删掉后,再同一位置创建一个同名的源文件,即使文件内容不一样,链接就会复活
      • 用ll浏览,链接名为绿色,并指向源文件路径。不管一个源文件创建了几个软连接,前面的数字总是为1
      • 源文件及其所有的软链接都是同步变化的
    • 硬链接
      • ln 源文件 链接名称                   
      • 用ll浏览,没有颜色和指向,前面的数字代表有几个文件能同步发生变化。
      • 硬链接相当于把源文件复制一份,与源文件同步变化。
      • 不能给文件夹创建硬链接,删除硬链接文件,不影响源文件
      • 删除源文件,硬链接没有影响,之后它会与之前一起创建的硬链接同步
  • grep(查找文本内容)
    • grep 搜索内容  待搜索区域                                                # 在某一区域范围内搜索文件内容,当待搜索区域为目录时,要加 -r 进行递归查找
    • -n                                                                                       # 返回搜索内容所在一行内容及行数
    • -i                                                                                        # 不区分大小写
    • -v                                                                                       # 返回不符合搜索内内容的行内容
    • grep -n ^h 待搜索区域                                                       # 在某一区域内搜索 行以h开头 的内容
    • grep -n h$ 待搜索区域                                                      # 在某一区域内搜索 行以h结尾 的内容
    • grep -n h.  待搜索区域                                                      # 在某一区域内搜索以h加一个字符的内容
  • find(查找文件)
    • find 待搜索区域 -name 文件名称                                      # 在某一区域搜索文件所在路径
    • find  ~  -name   '*.txt'                                                         # 在家目录下找所有以.txt结尾的文件路径(ps:用通配符进行模糊搜索时,需要给文件名加引号)       
  • tar(归档管理/打包)
    • tar  -cf  打包成的文件3  待打包的文件(夹)1  待打包的文件(夹)2            # 将文件1,文件2 打包成文件3
    • -f                                                                                                 # 对打包文件命名(必需,且写到后面)
    • tar -tf  打包成的文件3                                                                 # 将打包后的文件3中的内容列出来(不是解压)
    • tar -xf  解开的包的文件3  -C  解开后放置的目录                        # 将包解开的文件放在指定目录(已经存在的)下时要加 -C,不指定位置时,默认将包里面的内容放在当前目录下
    • -v                                                                                                # 显示打包或者解包的过程
    • 总结
      • -c                                                                                     # 打包
      • -f                                                                                      # 接包名
      • -x                                                                                     # 解包
      • -v                                                                                     # 显示打包、解包的过程
      • -t                                                                                      # 将包的内容列出来
  • 压缩与解压
    • 压缩
      • 打包                     tar  -cf  a.tar   *                                    # 将当前文件夹下的内容全部打包成a.tar
      • 压缩                     gzip  -r  a.tar                                        # 将a.tar这个包压缩换成a.tar.gz文件
    • 解压
      • 解压                     gzip -d  a.tar.gz                                   # 将a.tar.gz这个压缩包解压成a.tar
      • 解包                     tar  -xf  a.tar  -C ~/atar                        # 将a.tar包里面的所有内容释放进家目录下的atar文件夹下
  • 一步到位的压缩与解压
    • 压缩
      • tar -czf   a.tar.gz   *.txt                                                    # 将当前文件下的所有txt文件打包并压缩成a.tar.gz文件
    • 解压
      • tar -xzf   a.tar.gz -C   ./tempt                                           # 将a.tar.gz文件解压并将解压后的所有文件放进当前目录下的tempt文件夹下
    • 文件压缩格式
      • 格式名称——格式后缀名——选项简写字母
      •    gzip                  .gz                       -z
      •   bzip2                 .bz2                     -j
    • bzip2
      • tar   -jcf   j.tar.bz2  *txt                                                    # 将当前文件夹下的所有txt文件压缩成  j.tar.bz2
      • tar   -jxf   j.tar.bz2   -C   ./tempt                                      # 将j.tar.bz2解压并放置到 ./tempt文件夹下
    • zip
      • zip  -r  zz  *txt                                                                # 将当前文件夹下的所有txt文件压缩成zz.zip文件(zz不需要写扩展名)
      • unzip  -d zz  zz.zip                                                         # 解压时会自动创建目录zz
    • 压缩率
      • bzip2 > gzip > zip
    • 通用性
      • zip > gzip > bzip2
    • 故gzip使用率最高
  • which
    • which ls                                                   # 查看ls命令在哪个目录
  • su
    • su 用户名              # 切换用户,若不写用户,就表示切换为超级管理员(root)
  • passwd
    • passwd   用户名                                     # 更改某个用户的密码,若不写用户,就表示更改当前用户的密码;若密码设置太简单导致设置不成功,则可以用超级管理员设置
  • exit
    • 退出当前用户,返回至上一次登录的用户,若没有就退出terminal 窗口
  • who
    • 查看当前登录的用户
    • [yujian@192 Templates]$ who
      yujian tty1 2019-06-28 19:29 (:0)                        # tty 代表登录操作系统
      yujian pts/0 2019-06-28 19:33 (:0.0)                   # pts  代表登录终端

    • pkill  -kill  -t  tty1                                                  # 杀掉某个用户
  • reboot
    • 重启 ,不需要root权限
  • shutdown
    • shutdown  -h +10                                                # 10分钟之后关机,需要root 权限
    • shutdown -r                                                         # 重启
  • chmod
    • chmod  732  文件                                               # 将文件的权限更改为:所有者:读写执行,文件所属组:写执行,其他人:写
    • chomd  -R 777 文件夹                                       # 递归的将某个文件夹及其中所有的文件权限修改为777
原文地址:https://www.cnblogs.com/SakuraYuanYuan/p/11079624.html