Linux命令—符号篇

本文详细介绍了Linux命令中的一些常用符号,包括~(波浪线)代表当前用户路径,. 代表当前路径,单引号和双引号的用法区别,反引号用于命令替换,问号和星号作为通配符,中括号表示字符选择,感叹号配合中括号排除字符,美元符号在变量和脚本中的应用,以及如何通过${}获取变量值和判断命令执行状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

~ (波浪线)

在linux命令中波浪线 ~ 代表当前用户路径
如果你的用户名是abc,那么 ~ 代表的路径是 /Users/abc

work:~/baidu/ps-se$cd ~
work:~$pwd
/home/work
work:~$

. (点)

在linux命令中,点 . 代表当前路径
如果当前路径是/Users/abc,那么 . 就代表/Users/abc
如果想给当前路径下test.txt文件重命名,可以使用如下方式

mv ./test.txt text.txt
# 等同于如下命令
mv /Users/abc/test.txt text.txt

‘’ (单引号)

单引号内的内容都作为字符串,忽略内容中所有的命令和特殊字符

work:~$echo 'This is a string'
This is a string

“” (双引号)

与单引号的区别在于双引号内会解析特殊字符,单引号直接输出内容,不解析特殊字符;双引号内则会解析特殊字符,然后输出。
特殊字符包括’, ", $, \,如果要忽略特殊字符,就可以利用 \ 来转义,忽略特殊字符,作为普通字符输出

work:~$A=1
work:~$echo 'A'
A
work:~$echo "${A}"
1

`` (反引号)

用于将命令的执行结果赋予变量

work:~$date +"%Y-%m-%d"
2021-04-07
work:~$today=`date +"%Y-%m-%d"`

work:~$echo `date +"%Y-%m-%d"`
2021-04-07
# 等同于如下命令
work:~$echo ${today}
2021-04-07

# 可以看出反引号将date命令的执行结果赋值给了today变量

? (问号)

作为通配符,代表一个字符

work:~/$ls -l rea?me.txt
-rw-rw-r-- 1 work work 31 Feb  1 10:22 readme.txt

* (星号)

作为通配符,代表零个或多个字符

work:~/$ls -l read*
-rw-rw-r-- 1 work work 31 Feb  1 10:22 readme.txt

[] (中括号)

作为通配符,表示一个字符位置并给出多个可能的选择
如:ls re[ai]dme表示ls readme 及 ls reidme的结果集合
如:ls re[a-c]dme 表示ls readme 、ls rebdme及ls recdme的结果集合

work:~/$ls -l re[ai]dme.txt 
-rw-rw-r-- 1 work work 31 Feb  1 10:22 readme.txt
-rw-rw-r-- 1 work work 31 Mar 30 15:28 reidme.txt

! (感叹号)

配合中括号使用,将不需要的结果排除在外
如:ls re[!a]dme表示该位置字符结果将字符a结果排除在外

work:~/$ls -l re[!a]dme.txt
-rw-rw-r-- 1 work work 31 Mar 30 15:28 reidme.txt

$ (美元符号)

$ 符号在linux系统中作用广泛,尤其是在编写shell脚本时候,少不了 $ 符号

  • $ para(代表变量名)
    可获取变量的值

    work:~$A=1
    work:~$echo $A
    1
    
  • $0
    表示脚本名

  • $1
    表示脚本的第一个参数

  • $n(n=1,2,3…)
    表示脚本的第n个参数

  • $#
    表示脚本的参数个数

    实例展示:这里创建一个可执行文件test.sh

    # 创建可执行文件并填充命令
    work:~$sh test.sh echo 'echo $# $0 $1 $2' > test.sh
    work:~$cat test.sh
    echo $# $0 $1 $2
    
    # 执行可执行文件,并传入变量 I am a student
    work:~$sh test.sh I am a student
    4 test.sh I am
    
    # 由于并没有声明$3第三个参数,所以并没有打印 a
    
  • ${}
    用于获取变量的值,不同于 $para 用法,使用 {} 可以明确区分变量的边界

    work:~$a=1
    work:~$ab=2
    work:~$echo "$ab"
    2
    work:~$echo "${a}"
    1
    
  • $?
    判断上一个命令执行是否成功,获取返回值
    执行成功值时0,失败是非0

    work:~$ls
    111.txt
    work:~$echo $?
    0
    work:~$li
    bash: li: command not found # 未找到命令 = 命令执行失败
    work:~$echo $?
    127
    

参考文献:传送门

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值