Tag: bash

  • bash 中的双引号和单引号

    a=3 echo “b=$a+2” # 显示 b=3+2 echo ‘b=$a+2’ # 显示 b=$a+2 在 bash 中, 单引号 可以保证引用区域内的文字不被转换,起到保护作用,一般可以用在显示 code 之类; 双引号 可以包含文字或者函数段。其中,反引号中的函数,$ 开头的变量和 \ 开头反转换的字符外,其他都是直接输出。 之所以用双引号,是因为在bash中的变量替换发生在双引号内,如果不用引号,bash会把它们解释为命令。

  • 【笔记】Bash Shell 下算术运算的方法

    以下摘自 www.tnc.edu.tw,by 臥龍小三。原文   Bash shell 的算術運算有四種方式。 第一種:使用 expr 這個外部程式 加法 r=`expr 4 + 5` echo $r 注意! '4' '+' '5' 這三者之間要有空白 注意! 以下是錯誤的寫法: r=`expr 4 * 5` 原因:* 對 bash 而言有特殊意義(萬用字元),所以要改用以下寫法: 乘法 r=`expr 4 \* 5` 也就是說用 \ 取消 * 的特殊意義。 第二種:使用 $(( )) 上述計算,可用以下方式來做: r=$(( 4 + 5 )) echo $r 第三種:使用 $[…

  • Linux 下如何分别打包(压缩)目录下所有文件夹,xargs,awk

    这个问题可以通过一行命令完成(当然是通过管道 “|” 所包含多条命令啦)。首先需要拆分这个问题。 获得所有目录列表,通过 grep 命令抓取以 d 标记开头的行,即为目录。 [edwin@edwinW /]# ls Dropbox bin boot data dev etc home lib lib64 lost+found media mnt opt proc root sbin selinux srv sys tmp usr var wwwroot [edwin@edwinW /]# ls -l | grep ^d drwxrwxrwx 6 nobody nobody 4096 Jul 19 05:00 Dropbox drwxr-xr-x 2 root root 4096…