zoukankan      html  css  js  c++  java
  • bash shell笔记

      1 cd 切换到指定文件位置 " . " 当前目录 " .. " 父目录
      2 pwd 显示路径
      3 ls 显示当前目录下的文件和目录
      4    ls -F 区分文件和目录
      5    ls -a 显示隐藏文件和普通文件
      6    ls -R 显示文件下的内容
      7    ls -l (ll)显示每个文件的相关信息
      8 touch 创建空文件  cp 复制文件  rm 删除文件 mv 移动文件或重命名
      9 cp -R 复制目录   rm -f 强制删除  rm -R 删除多个文件 rm -rf 强制删除多个文件
     10 mkdir 创建目录   mkdir -p 同时创建多个目录和子目录
     11 rmdir 删除空目录
     12 file 查看文件类型
     13 cat 查看整个文件  cat -n 加行号
     14 moreless) 查看整个文件,显示每页数据后停止
     15 
     16 查看部分文件: tail 显示文件末尾10行 tail -n x 显示行数
     17               head 显示文件前10行   head x 显示行数
     18 ps 显示运行的程序的信息
     19 top 实时监测进程
     20 df 磁盘空间
     21 mount 卸载设备
     22 du  显示当前目录下所有文件的磁盘使用情况
     23 du -hs 总计磁盘空间
     24 sort 对数据进行排序    sort -n 把数字识别成数字而不是字符    sort -M 按月排序   -t 指定分隔符
     25 grep [搜索内容]+ 搜索文件     搜索数据
     26 exit 退出shell
     27 sleep 10 会话暂停10秒  sleep 10& 后台睡眠10秒
     28 jobs 显示后台运行的进程
     29 coproc { ; } 协程,后台生成子shell,并执行命令,命令以分号结束,花括号前后都要有一个空格
     30 
     31 外部命令:当外部命令执行时,会创建一个子进程。
     32 内建命令:不需要借助外部程序文件来运行,运用type命令检查是哪种命令
     33 history 查看最近用过的命令
     34 alias   命令创建另一个名称
     35 env或printenv  查看全局环境变量
     36 set    显示所有环境变量,包括局部变量和全局变量
     37 echo $   显示变量当前值,让命令作为命令行参数
     38 variable="Hello World"   设置局部变量
     39 export variable  将局部变量变为全局变量
     40 unset    删除环境变量
     41 PATH   shell查找命令的目录列表,由冒号分割
     42 useradd  添加新用户
     43 userdel  删除用户   
     44 groupadd  创建新组
     45 groupmod  修改组
     46 文件权限符: - 代表文件  d文件  r可写  w可读  x可执行   u用户  g组  o其他   +增加权限  -移除权限  =权限设置确定值
     47 umask  默认文件权限设置
     48 chmod  改变文件权限
     49 chown  改变文件属主
     50 chgrp  改变默认属主
     51 
     52 关于shell
     53 ` ` 或 $() 实现命令替换fee
     54 输出重定向:将命令的输出发送到一个文件中 符号: > 或 >> (不覆盖文件原内容)
     55            command > file
     56 输入重定向:将文件的内容向指定命令中执行 符号: <
     57            command < file
     58 内联输入重定向:命令行中输入指向命令中执行的数据 符号: <<
     59            command << mark
     60            >test1
     61            >test2
     62            >mark          (数据开始和结尾文本标记必须一致)
     63 管道:将一个命令的输出作为另一个命令的输入   符号: |
     64       command1 | command2
     65 数学运算符:
     66 expr命令:expr 1 * 2    ()转义符
     67 $[1 * 2]命令
     68 bc :内建的bash计算器 输入quit退出  scale=4 表示结果包含四位小数 print打印变量结果
     69 if-then语句:  if command
     70                then
     71                   command
     72                fi
     73 test 当命令中的条件成立时,退出状态码0
     74 数值比较:
     75 x1 -eq x2 (是否相等)  x1 -ge x2 (x1是否大于或等于x2)  x1 -gt x2(x1是否大于x2)
     76 x1 -le x2 (x1是否小于或等于x2)  x1 -lt x2 (x1是否小于x2)  x1 -ne x2 (是否不相等)
     77 case命令: case variable in
     78            pattern1) command1;;
     79            pattern2) command2;;
     80            *) default command3;;
     81            esac   变量与多种模式进行比较
     82 for循环:  for var in x1 x2 x3
     83            do 
     84               commands
     85            done   (var第一次迭代x1第二次x2)
     86 IFS内部字段分隔符: 默认(空格,制表符,换行符)IFS=$'
    '(只识别换行符)
     87 C语言风格的for循环:for((i=1; i<=10; i++))
     88                    do
     89                      echo
     90                    done
     91 while命令:while testcommand
     92            do
     93                command
     94            done   (当test成立时进入循环)
     95 until命令:until testcommand
     96            do
     97                command
     98            done   (当test成立时退出循环)
     99 break命令:退出循环 break n (n是退出的循环层级)
    100 continue命令:终止循环中的某次命令 continue n(n是要继续的循环层级)
    101 命令行参数:$0程序名 $1第一个参数 $2第二个参数 $#参数的个数 
    102          $*将所有参数视为一个单词一个整体  $@将所有参数视为同一字符串的多个独立单词
    103 shift命令:移动变量 默认将每个参数变量左移动一个位置
    
  • 相关阅读:
    Linux Bash常用命令记录
    Ubuntu 环境 openMVG+openMVS 配置
    GDB调试系列之了解GDB
    OpenCV4系列之图像梯度
    ffmpeg基本功能使用
    GDB调试系列之基础入门
    STL std::pair基本用法
    判断机器CPU的大小端模式并将数据转换成小端形式
    由对象集合创建各种映射_流
    静态类型与函数重载
  • 原文地址:https://www.cnblogs.com/Uriel-w/p/12309840.html
Copyright © 2011-2022 走看看