如何做外贸soho做网站,中型网站建设,广东公路建设有限公司官网,想做个app软件需要什么条件在shell中常用的特殊符号罗列如下#xff1a;
$ ${} $? $$ $*
$# $ command{} [] [[]] () (()) ; 分号 (Command separator) 在 shell 中#xff0c;#xff1b;主要用来在一行中运行一条或者多条指令。 ;; 连续分号 (Terminator) 专用在 case 的选项#xff0c;担任 T…在shell中常用的特殊符号罗列如下
$ ${} $? $$ $*
$# $ command{} [] [[]] () (()) ; 分号 (Command separator) 在 shell 中主要用来在一行中运行一条或者多条指令。 ;; 连续分号 (Terminator) 专用在 case 的选项担任 Terminator 的角色。 case “$fop” inhelp) echo “Usage: Command -help -version filename”;;version) echo “version 0.1” ;;esac ‘string’ 单引号 (single quote) “string” 双引号 (double quote) 被单引号用括住的内容将被视为单一字串。在引号内的代表变数的$符号没有作用也就是说他被视为一般符号处理防止任何变量替换。 被双引号用括住的内容将被视为单一字串。它防止通配符扩展但允许变量扩展。这点与单引数的处理方式不同。
[rootlocalhost ~]# vartest1234
[rootlocalhost ~]# echo $vartest is good
$vartest is good
[rootlocalhost ~]# echo $vartest
1234
[rootlocalhost ~]# echo $vartest is good
1234 is goodcommand 倒引号 (backticks) 用倒单引号来执行指令。
[rootlocalhost ~]# fdvls
[rootlocalhost ~]# echo $fdv
anaconda-ks.cfg Desktop Documents Downloads initial-setup-ks.cfg Music original-ks.cfg Pictures Public Templates Video| 管道 (pipeline)
pipeline 是 UNIX 系统基础且重要的观念。连结上个指令的标准输出做为下个指令的标准输入。
[rootlocalhost ~]# who |wc -l
5$相关指令
$ (dollar sign) 变量替换(Variable Substitution)的代表符号。 $*引用script的执行引用变量引用参数的算法与一般指令相同指令本身为0其后为1然后依此类推。 $ 与 $* 具有相同作用的符号不过她们两者有一个不同点。 符号 $* 将所有的引用变量视为一个整体。但符号 $ 则仍旧保留每个引用变量的区段观念。 $# 这也是与引用变量相关的符号她的作用是告诉你引用变量的总数量是多少。 $? 状态值 (status variable) 一般来说UNIX(linux) 系统的进程以执行系统调用exit()来结束的。这个回传值就是status值。回传给父进程用来检查子进程的执行状态。 一般指令程序倘若执行成功其回传值为 0失败为 1。
小括号 ①命令组。括号中的命令新开一个子shell程序括号中的变量为本地变量 不能够在脚本其他部分使用。括号中多个命令之间用分号隔开。 ②命令替换。命令替换$(cmd)等同于cmd(这不是单引号是ESC下面的那个键) shell执行过程中发现了$(cmd)结构便将$(cmd)中的cmd执行一次得到其输出再将此输出放到原来命令。例如
[rootlocalhost tmp]# ls
fstab functions hellobash issue mytestdir scripts
[rootlocalhost tmp]# echo $(ls)
fstab functions hellobash issue mytestdir scripts
[rootlocalhost tmp]# echo ls
fstab functions hellobash issue mytestdir scripts
[rootlocalhost tmp]# { } 大括号 (Block of code)
①拓展。对大括号中的文件名做扩展。在大括号中不允许有空白除非这个空白被引用或转义。拓展分为普通以逗号进行拓展如echo {a,b}.txt将间隔的各项内容均列出已两个点…进行拓展如echo {1…5}.txt自动补全1到5中间内容。
[rootlocalhost ~]# echo {a,b}.txt
a.txt b.txt
[rootlocalhost ~]# echo {1..5}.txt
1.txt 2.txt 3.txt 4.txt 5.txt
[rootlocalhost ~]# ②内部组 。与小括号中的命令不同大括号内的命令在当前shell运行不会重新开子shell。括号内的命令间用分号隔开最后一个命令后必须跟分号。{}的第一个命令和左括号之间必须要有一个空格。
[ ] 中括号
常出现在流程控制中扮演括住判断式的作用。 [[ ]] 这组符号与先前的 [] 符号基本上作用相同但她允许在其中直接使用 || 与 逻辑等符号。
#!/bin/bash
read ak
if [[ $ak 5 || $ak 9 ]]
then
echo $ak
fi后台工作
单一个 符号且放在完整指令列的最后端即表示将该指令列放入后台中工作。 tar cvfz data.tar.gz data /dev/null