zoukankan      html  css  js  c++  java
  • Linux(ubuntu16.04)下的一些常用命令操作细节整理

    # 本文整理了Linux(ubuntu16.04)上常用的大约几十个命令,并讲述了相关的操作细节:

    # cd、pwd、ls、clear、mkdir、touch、rm、cp、mv、tree、chmod、find、grep、重定向>、ln 软链接、硬链接 、压缩zip tar 、exit 等等

    ----------------------------------------------------------------------------------------------------------------------------------

    • 1.touch 如果文件不存在则创建,如果文件已存在不会创建(覆盖)

    • 2.mkdir 创建目录 如果目录和文件名重名:
        • 先存在文件或目录,再创建目录 —— 报错:文件已存在,无法创建
          • 新建目录的名称不能与当前目录中已有的目录或文件同名
        • 先存在目录,再touch同名文件,则不会报错,也不会创建(覆盖)存在的目录
        • 可以递归创建目录 mkdir 1/2/3/4/4 -p
          • 递归创建(新建)的目录和子目录可以重名

    • 3.rm 删除指定的文件名
      • 如果指令后面接多个文件或目录,则会删除命令后所有文件的同时,提示:xxx不是文件;
      • 如果在上述命令后增加选项 -r ,则会删除命令后面指定的文件或文件夹,但是提示:XXX文件不存在。
      • 提示:有报错提示,但是不影响指令的执行
      • -r 递归地删除目录下的内容,删除文件夹时必须加此参数
      • -f 强制删除,忽略不存在的文件,无需提示
      • -i 以进行交互式方式执行

    • 5.查阅命令帮助信息:
      • “command” --help # eg: rm --help
      • man “command” # eg:man rm
        • man是manual的缩写,和其配套的还有b,f,j,k,enter键,空格键,q(退出),word # word是要查找的字符串

    • 6.cp 路径/操作文件名 路径/目标文件名
      • 文件名->文件名:如果目标文件名已经存在,则会覆盖,这个和touch不同
      • 目录->目录:如果操作的是目录名,则 操作的是该目录内的所有内容
      • 目录->目录:如果操作的是目录名,则 后面需要加选项 -r
      • 目录->目录:如果操作的是目录名,则 后面必须也是一个目录
      • 目录->目录:如果目标路径不存在,则 创建路径(目录)
      • 文件名->目录/文件名:目录必须已经存在,否则报错;
      • -a 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。
      • -f 已经存在的目标文件而不提示
      • -i 交互式复制,在覆盖目标文件之前将给出提示要求用户确认
      • -r 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
      • -v 显示拷贝进度

    • 7.cd :切换目录:
      • 后面不接参数和选项,则 切换到当前用户的主目录
      • cd . & cd .. & cd ~ & cd - ...

    • 8.mv : 移动、重命名
      • 操作路径/文件名 -> 目标路径/目标文件名
      • 如果目标路径存在,则 移动文件,并将路径后面的最有一个/后的内容作为新的文件名
      • 如果目标路径不存在,则 报错
      • -i 确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
      • -f 禁止交互式操作,如有覆盖也不会给出提示
      • -v 显示移动进度

    • 9.重定向命令:> & >>
      • Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。
      • 如:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )
      • 所谓重定向:修改了默认的输出(显示)方向
      • 重定向可以用来合并文件
      • > 先清空后添加
      • >> 不清空,追加到文件的尾部

    • 10.1.cat 查看文件内容,直接显示到终端
    • 10.2.more 分屏显示
      • 查看内容时,在信息过长无法在一屏上显示时,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助
    • 10.3.管道:|
      • 一个命令的输出可以通过管道做为另一个命令的输入。
      • ls -lh | more

    • 11.软连接、硬链接:ln
      • 软链接:软链接不占用磁盘空间,源文件删除则软链接失效。
      • 硬链接:硬链接只能链接普通文件,不能链接目录
      • 硬链接格式:ln 源文件 链接文件
      • 软连接格式:ln -s 源文件 链接文件
      • 注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径。
      • 涉及到在当前的文件夹查找文件名,如果相对路径,之后又把文件移动到原来的位置还是可以用的。
      • 修改软连接打开的文件的时候,对应的文件也会修改。
      • 修改硬链接打开的文件的时候,对应的原文件也会修改。
      • 修改源文件后,通过软连接、硬链接打开都可以看到对应修改后的文件。
      • 修改源文件后,对应的多个软、硬链接的文件都会跟着改变。
      • 硬链接是同一个文件内容,多个不同文件名,执行ll会显示。

    • 12.查看或者合并文件内容:cat
      • 相对路径查看
      • 绝对路径查看
      • 合并:如:cat 1.txt 2.txt > 1_2.txt

    • 13.文本搜索:grep
      • grep一般格式为:grep [-选项] ‘搜索内容字符串’ 文件名
      • -v 显示不包含匹配文本的所有行(相当于求反)
      • -n 显示匹配行及行号
      • -i 忽略大小写
      • grep搜索内容串可以是正则表达式

    • 14.查找文件:find
      • find -name "*.txt" : 查找当前目录下以.txt结尾的文件
      • find -name /home/python "[0-9]" : 查找python目录下的单个数字的文件夹或者文件
      • find -size +50k -size -5M : 查找当前目录下文件大小在2k~5M的文件,注意这里k小写;M大写。
      • find ./ -perm 777 查找当前目录下权限为777的文件或目录

    • 15.归档管理:tar
      • tar使用格式 tar [参数] 打包文件名 文件
      • -c 生成档案文件,创建打包文件
      • -v 列出归档解档的详细过程,显示进度
      • -f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
      • -t 列出档案中包含的文件
      • -x 解开档案文件
      • 注意: 除了f需要放在参数的最后,其它参数的顺序任意。
      • tar -cvf test.tar * : 将当前目录内所有文件打包成文件名为test.tar
      • tar -xvf test.tar : 解压刚才的文件。

    • 16.1. 文件压缩解压:gzip

      • tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
      • gzip格式:gzip [选项] 被压缩文件
      • -d 解压
      • -r 压缩所有子目录
      • gzip -r test.tar test.tar.gz
        • 可以简写:gzip test.tar
      • gzip -d test.tar.gz
        • 解压缩,注意哟:下面的都是tar命令
      • tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程。
      • 压缩用法:tar cvzf 压缩包包名 文件1 文件2 ...
      • -z :指定压缩包的格式为:file.tar.gz
      • tar -zcvf test.tar.gz * : 将当前路径下的所有文件以文件夹打包并压缩到test.tar.gz文件中
      • 解压格式: tar zxvf 压缩包包名
      • tar -zxvf test.tar.gz : 解压到当前路径下
      • 解压到指定目录:-C (大写字母“C”)
      • tar -zxvf test.tar.gz -C /home/python/Desktop : 解压到桌面
    • 16.2. 文件压缩解压:bzip2

      • 压缩用法:tar -jcvf 压缩包包名 文件...(tar jcvf bk.tar.bz2 *.c)
      • 解压用法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.bz2)
      • 总之,和上面用法在于 z --> j ,换一个选项
    • 16.3 文件压缩解压:zip、unzip

      • 通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
      • 压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
      • 解压文件:unzip -d 解压后目录文件 压缩文件
        • 目录如果不存在会自动创建,如果放在当前目录,则会出现各种交互式提示

    • 17.查看命令位置:which
      • 如果找到就显示这个命令的路径,否则不显示

    • 18.修改文件权限:chmod
      • 字母法VS数字法
      • 字母法:chmod u/g/o/a +/-/= rwx 文件
      • u user 表示该文件的所有者
      • g group 表示与该文件的所有者属于同一组( group )者,即用户组
      • o other 表示其他以外的人
      • a all 表示这三者皆是
        • 增加权限
        • 撤销权限
      • = 设定权限
      • r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
      • w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
      • x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。
      • eg: chmod u+r,g-w,o=wrx 1.py : 对于1.py文件,user
      • eg: chmod u-w,g+r,o= 1.py
      • r 读取权限,数字代号为 "4"
      • w 写入权限,数字代号为 "2"
      • x 执行权限,数字代号为 "1"
      • - 不具任何权限,数字代号为 "0"
      • chmod u=rwx,g=rx,o=r filename 就等同于:chmod u=7,g=5,o=4 filename
      • 注意:如果想递归所有目录加上相同权限,需要加上参数“ -R ”。 如:chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限

    • 19.1.切换到管理员账号root

      • $ 表示普通用户
      • # 表示管理员账户
      • whoami
      • sudo -s
    • 19.2.设置用户密码:passwd

      • 在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户密码。用户也可以直接使用该命令来修改自己的密码,而无需在命令后面使用用户名。
    • 19.3. 退出登录账户: exit

      • 如果是图形界面,退出当前终端;
      • 如果是使用ssh远程登录,退出登陆账户;
      • 如果是切换后的登陆用户,退出则返回上一个登陆账号。
    • 19.4.查看登录用户:who

      • who命令用于查看当前所有登录系统的用户信息。
      • -q或--count : 只显示用户的登录账号和登录用户的数量
      • -u或--heading : 显示列标题; 这个也是默认模式

    • 20.关机重启:reboot、shutdown、init
      • reboot 重新启动操作系统
      • shutdown –r now : 重新启动操作系统,shutdown会给别的用户提示
      • shutdown -h now : 立刻关机,其中now相当于时间为0的状态
      • shutdown -h 24:12 : 系统在今天的24:12 会关机
      • shutdown -h +10 : 系统再过十分钟后自动关机

  • 相关阅读:
    easyExcel入门
    UML-从需求到设计--迭代进化
    UML-操作契约总结
    102. Binary Tree Level Order Traversal
    98. Validate Binary Search Tree
    95. Unique Binary Search Trees II
    96. Unique Binary Search Trees
    94. Binary Tree Inorder Traversal
    84. Largest Rectangle in Histogram
    92. Reverse Linked List II
  • 原文地址:https://www.cnblogs.com/xiegalpha/p/9231654.html
Copyright © 2011-2022 走看看