运行shell脚本的两种方式:
nohup ./testMain.sh > /dev/null 2>&1
nohup sh testMain.sh > /dev/null 2>&1 &
================================================
awk命令学习
[shell]$ more filet.txt
123 456
789 00
[shell]$ more filet.txt | awk '{print $0}'
123 456
789 00
[shell]$ more filet.txt | awk '{print $1}'
123
789
[shell]$ more filet.txt | awk '{print $2}'
456
00
知其然,知其所以然
了解其工作原理。在命令行中输入以下命令:
$ awk '{ print }' /etc/passwd
您将会见到 /etc/passwd 文件的内容出现在眼前。现在,解释 awk 做了些什么。调用 awk 时,我们指定 /etc/passwd 作为输入文件。执行 awk 时,它依次对 /etc/passwd 中的每一行执行 print 命令。所有输出都发送到 stdout,所得到的结果与与执行catting /etc/passwd完全相同。
现在,解释 { print } 代码块。在 awk 中,花括号用于将几块代码组合到一起,这一点类似于 C 语言。在代码块中只有一条 print 命令。在 awk 中,如果只出现 print 命令,那么将打印当前行的全部内容。
这里是另一个 awk 示例,它的作用与上例完全相同:
$ awk '{ print $0 }' /etc/passwd
在 awk 中,$0 变量表示整个当前行,所以 print 和 print $0 的作用完全一样。
如果您愿意,可以创建一个 awk 程序,让它输出与输入数据完全无关的数据。以下是一个示例:
$ awk '{ print "" }' /etc/passwd
只要将 "" 字符串传递给 print 命令,它就会打印空白行。如果测试该脚本,将会发现对于 /etc/passwd 文件中的每一行,awk 都输出一个空白行。再次说明, awk 对输入文件中的每一行都执行这个脚本。以下是另一个示例:
$ awk '{ print "hiya" }' /etc/passwd
运行这个脚本将在您的屏幕上写满 hiya
参考:
http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTM
================================================
将经过shell运算过的值赋值给变量
[shell]$ vi a.sh
num=$(more filet.txt |wc -l|awk '{print $1}')
echo $num
[shell]$ ./a.sh
2
======================== ========================
用head或tail指令指定查阅的行数
例如:查阅文件前20行: head –20 file_name
查阅文件后10行: tail –10 file_name
============================ ============================
================================== ==================
sort 命令学习
sort 是很有趣的指令,他可以幫我們進行排序,而且可以依據不同的資料型態來排序喔! 例如數字與文字的排序就不一樣。此外,排序的字元與語系的編碼有關,因此, 如果您需要排序時,建議使用 LANG=C 來讓語系統一,資料排序比較好一些。
[root@www ~]# sort [-fbMnrtuk] [file or stdin]
選項與參數:
-f :忽略大小寫的差異,例如 A 與 a 視為編碼相同;
-b :忽略最前面的空白字元部分;
-M :以月份的名字來排序,例如 JAN, DEC 等等的排序方法;
-n :使用『純數字』進行排序(預設是以文字型態來排序的);
-r :反向排序;
-u :就是 uniq ,相同的資料中,僅出現一行代表;
-t :分隔符號,預設是用 [tab] 鍵來分隔;
-k :以那個區間 (field) 來進行排序的意思
![](http://static.oschina.net/uploads/space/2013/0225/204028_wgh3_169620.png)
sort 同樣是很常用的指令呢!因為我們常常需要比較一些資訊啦! 舉個上面的第二個例子來說好了!今天假設你有很多的帳號,而且你想要知道最大的使用者 ID 目前到哪一號了!呵呵!使用 sort 一下子就可以知道答案咯!當然其使用還不止此啦! 有空的話不妨玩一玩!
参考:
http://linux.vbird.org/linux_basic/0320bash.php#sort
VI用什么命令到文件头和文件尾?
1G到第一行,G到最后一行
VI用什么命令到行首和行尾?
^ ,$