shell | ||||||||||||||||
> | 例: '>' 为创建: echo “hello shell” > out.txt | 当out.txt 文本不存在时,'>'与‘>>’都会默认创建out.txt文本, 并将hello shell 字符串保存到out.txt中 | ||||||||||||||
>> | 例: '>>' 为追加:echo “hello shell” >> out.txt | 当out.txt文本存在时,‘>’会将out.txt文本中的内容清空, 并将hello shell 字符串存入而‘>>’会将 hello shell追加保存到out.txt的末尾 | ||||||||||||||
${}配合#及%使用达到 字符串中特定位置字符删除操作 | 例:file=/dir1/dir2/fir3/my.file.txt ${file#*/}:删掉第一个/及其左边的字符串 结果 -- dir1/dir2/dir3/my.file.txt ${file##*/}:删掉最后一个/及其左边的字符串 结果 -- my.file.txt ${file#*.}:删除第一个.及其左边的字符串 结果 -- file.txt ${file##*.}:删除最后一个.及其左边的字符串 结果 -- txt | ${file%/*}:删除最后一个/及其右边的字符串 结果 -- /die1/dir2/dir3 ${fiel%%/*}:删除第一个/及其右边的字符串 结果 -- 空值 ${file%.*}:删掉最后一个.及其右边的字符串 结果 -- /dir1/dir2/dir3/my.file | 按一定规律提取字符 ${file:0:5}:提取最左边的 5 个字节:/dir1 (第0个字符之后的5个字符) ${file:5:5}:提取第 5 个字节右边的连续5个字节:/dir2 (第五个字符之后的5个字符) | |||||||||||||
$ | 1、$# 表示执行脚本传入参数的个数 2、$* 表示执行脚本传入参数的列表(不包括$0) 3、$$ 表示进程的id 4、$@ 表示执行脚本传入参数的所有个数(不包括$0) 5、$0 表示执行的脚本名称 6、$1 表示第一个参数 7、$2 表示第二个参数 8、$? 表示脚本执行的状态,0表示正常,其他表示错误 | |||||||||||||||
devmem | [用法]:直接读写内存 Usage: devmem ADDRESS [WIDTH [VALUE]] 读取:在地址0x97000000读取32bit值(WIDTH默认等于32, 可选值为[8, 16, 32, 64]) /dev # devmem 0x97000000 0x11111111 读取:在地址0x97000000读取16bit值 /dev # devmem 0x97000000 16 0x1111 写入:在地址0x97000000写入32bit值0x7777ABCD /dev # devmem 0x97000000 32 0x7777ABCD /dev # devmem 0x97000000 0x7777ABCD 注意:如果/dev下没有mem这个node,会出现错误: /dev # devmem 0x97000000 devmem: can’t open ‘/dev/mem’: No such file or directory | |||||||||||||||
ping | ping -c 3 localhost linux指令,ping -c count ip,向指定IP发送指定数量的ping包 | |||||||||||||||
ethtool | 用于获取以太网的配置信息或者修改配置 例: ethtool $1 | grep "Speed" | grep "1000M" | 查看内核版本路径 : cat /proc/version | ||||||||||||||
[[ ]] | 在[]里面,使用-eq的时候,需要用整数来做参数,如果是非整数就会提示报错,而[[]]则直接把非整数的字符串转成了0(),而不会去检查并显示报错内容。 | 当if [ $x -eq $y ]时 [root@localhost shelltest]# ./teststring.sh 1 ad ./teststring.sh: line 4: [: ad: integer expression expected 当if [[ $x -eq $y ]]时 [root@localhost shelltest]# ./teststring.sh ad ad ok [root@localhost shelltest]# ./teststring.sh 1 a not equel [root@localhost shelltest]# ./teststring.sh aa 0 ok [root@localhost shelltest]# ./teststring.sh 0 aa ok | ||||||||||||||
amixer | Linux下amixer指令用法小结_wangqingchuan92的博客-CSDN博客_amixer命令 | |||||||||||||||
exec | exec 命令就是为解决这种困境而生的,它可以让重定向对当前 Shell 进程中的所有命令有效,它的用法为: exec 文件描述符操作 在《结合Linux文件描述符谈重定向,彻底理解重定向的本质》一节讲到的所有对文件描述符的操作方式 exec 都支持,请看下面的例子: [mozhiyan@localhost ~]$ echo “重定向未发生” 重定向未发生 [mozhiyan@localhost ~]$ exec >log.txt [mozhiyan@localhost ~]$ echo “c.biancheng.net” [mozhiyan@localhost ~]$ echo “C语言中文网” [mozhiyan@localhost ~]$ exec >&2 [mozhiyan@localhost ~]$ echo “重定向已恢复” 重定向已恢复 [mozhiyan@localhost ~]$ cat log.txt c.biancheng.net C语言中文网 对代码的说明: exec >log.txt将当前 Shell 进程的所有标准输出重定向到 log.txt 文件,它等价于exec 1>log.txt。 后面的两个 echo 命令都没有在显示器上输出,而是输出到了 log.txt 文件。 exec >&2用来恢复重定向,让标准输出重新回到显示器,它等价于exec 1>&2。2 是标准错误输出的文件描述符,它也是输出到显示器,并且没有遭到破坏,我们用 2 来覆盖 1,就能修复 1,让 1 重新指向显示器。 接下来的 echo 命令将结果输出到显示器上,证明exec >&2奏效了。 最后我们用 cat 命令来查看 log.txt 文件的内容,发现就是中间两个 echo 命令的输出。 | |||||||||||||||
sata | linux测试sata的函数,linux测试sata硬盘读写速度_weixin_39979332的博客-CSDN博客 | RTC:https://www.cnblogs.com/libra13179/p/14299317.html?ivk_sa=1024320u | ||||||||||||||
read | 当我们输入的字段比变量数目多时,最后一个变量的值将不只一个字段,而是所有剩余的内容;当输入字段比变量数少时,多余的变量将是空值,你可以自己试试。现在我们再来看 while read line do … done < file read通过输入重定向,把file的第一行所有的内容赋值给变量line,循环体内的命令一般包含对变量line的处理;然后循环处理file的第二行、第三行。。。一直到file的最后一行。还记得while根据其后的命令退出状态来判断是否执行循环体吗?是的,read命令也有退出状态,当它从文件file中读到内容时,退出状态为0,循环继续惊醒;当read从文件中读完最后一行后,下次便没有内容可读了,此时read的退出状态为非0,所以循环才会退出。 另一种也很常见的用法: command | while read line do … done 如果你还记得管道的用法,这个结构应该不难理解吧。command命令的输出作为read循环的输入,这种结构长用于处理超过一行的输出,当然awk也很擅长做这种事。 | |||||||||||||||
hexdump | https://blog.csdn.net/zybasjj/article/details/7874720https://blog.csdn.net/cqbamboo/article/details/41863977 | |||||||||||||||
md5sum | md5sum:计算和校验文件的md5值 功能:用于校验和计算文件的md5值,它是一种不可逆的加密算法。 https://www.cnblogs.com/olddriver-t/p/14517343.html | |||||||||||||||
flash_erase flash_eraseall | https://blog.csdn.net/mayue_web/article/details/105453979https://www.lmlphp.com/user/16685/article/item/537826/ | |||||||||||||||
GPIO | https://blog.csdn.net/tongxin1101124/article/details/105075340?spm=1001.2014.3001.5502https://blog.51cto.com/u_15155077/2716473 | |||||||||||||||
UART | Shell 脚本实现串口操作 主要的实现思路:stty实现串口波特率等的设置,cat实现内容的读取,echo实现串口输入。 通常使用的命令为stty -F /dev/$serial_port raw $port_speed。在该命令之后就可以使用echo/cat进行输入输出操作. 把16进制数据0xdd 0xff 发送到/dev/ttyUSB0里去 echo -e -n “\xdd\xff” > /dev/ttyUSB0 -e:表示便能“\”反斜杠,“\x”表示后边的数据为16进制 -n:表示不添加换行符“0x0A | Linux通过shell脚本操作串口_501007162021的博客-CSDN博客_linux shell 操作串口 | ||||||||||||||
dd | shell中的dd命令使用详解_weixin_30260399的博客-CSDN博客 | |||||||||||||||
Linux 实践 . Shell 脚本总结大全 . 常用的Shell脚本命令用法即介绍
最新推荐文章于 2023-01-08 15:42:56 发布