Linux 命令行通配符及转义符的实现
生活随笔
收集整理的這篇文章主要介紹了
Linux 命令行通配符及转义符的实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們想對一類文件批量操作,例如批量查看硬盤文件屬性,那么正常命令會是:
[root@linuxprobe ~]# ls /dev/sda [root@linuxprobe ~]# ls /dev/sda1 [root@linuxprobe ~]# ls /dev/sda2 [root@linuxprobe ~]# ls /dev/sda3但有些時候確實不知道分區的
通配符
星號(*)代表匹配零個或多個字符
huanyu@ubuntu:~$ ls -l /dev/sda*??
問號(?)代表匹配單個字符
huanyu@ubuntu:~$ ls -l /dev/sda???
中括號內加上數字[0-9]代表匹配0~9之間的單個數字的字符,而中括號內加上字母[abc]則是代表匹配a、b、c三個字符中的任意一個字符
huanyu@ubuntu:~$ ls -l /dev/sda[0-9] huanyu@ubuntu:~$ ls -l /dev/sda[135]??
?示例:
查看sda開頭的所有設備文件:
[root@linuxprobe ~]# ls /dev/sda* /dev/sda /dev/sda1 /dev/sda2查看sda后面有一個字符的設備文件:
[root@linuxprobe ~]# ls /dev/sda? /dev/sda1 /dev/sda2查看sda后面包含0-9數字的設備文件:
[root@linuxprobe ~]# ls /dev/sda[0-9] /dev/sda1 /dev/sda2查看sda后面是1或3或5的設備文件:
[root@linuxprobe ~]# ls /dev/sda[135] /dev/sda1轉義符
??
反斜杠(\):使反斜杠后面的一個變量變為單純的字符串
huanyu@ubuntu:~$ echo "Price is \$$PRICE"??
反引號(``):把其中的命令執行后返回結果
huanyu@ubuntu:~$ echo `uname -a`示例
定義名稱為PRICE的變量值為5:
[root@linuxprobe ~]# PRICE=5想要輸出”價格是5″:
[root@linuxprobe ~]# echo "Price is $PRICE" Price is 5想要輸出”價格是$5″,但因為美元符號與代表變量取值的$符號沖突了,所以報錯了:
[root@linuxprobe ~]# echo "Price is $$PRICE" Price is 3767PRICE添加一個反斜杠,將第一個$符號轉義:
[root@linuxprobe ~]# echo "Price is \$$PRICE" Price is $5使用單引號,變量將不再被取值:
[root@linuxprobe ~]# echo 'Price is \$$PRICE' Price is \$$PRICE執行uname -a后可以查看到本機內核的版本與架構信息(反引號里面的命令會被執行):
[root@linuxprobe ~]# echo `uname -a` Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- linux shell命令行選項與參數用法詳解
- Linux命令行和shell腳本編程寶典 Richard Blum
- Linux終端命令行的常用快捷鍵詳解
- linux shell命令行參數用法詳解
文章同步發布:?https://www.geek-share.com/detail/2752322935.html
轉載于:https://www.cnblogs.com/sohuhome/p/9913224.html
總結
以上是生活随笔為你收集整理的Linux 命令行通配符及转义符的实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 12321 公布《2023 年第二季度垃
- 下一篇: 奇瑞 eQ7 汽车预售价公布:14.39