在awk中可以直接執行shell命令。
- zoer@ubuntu:~$ touch a
- zoer@ubuntu:~$ touch b
- zoer@ubuntu:~$ cat a.txt
- a
- b
- zoer@ubuntu:~$ awk '{cmd="rm "$0;system(cmd)}' a.txt
- zoer@ubuntu:~$ ls
- a.txt dd important mysql py testdata
- daemon.py Desktop installer mysql_install_db.sh stu
- data dfadsfadfadf jdk1.6.0_33 Public stu.txt
- zoer@ubuntu:~$
我們在awk中組裝命令並且最后使用system()來執行。每次讀入一個文件名並刪除這個文件。
----------------------------------------
下面我們使用awk中執行命令來創建一些文件。
- zoer@ubuntu:~$ awk 'BEGIN{count=10;i=0;while(i<count){cmd="touch "i".txt";i++;system(cmd)}}'
- zoer@ubuntu:~$ ls
- 0.txt 4.txt 8.txt dd jdk1.6.0_33 py
- 1.txt 5.txt 9.txt Desktop mysql stu
- 2.txt 6.txt daemon.py important mysql_install_db.sh stu.txt
- 3.txt 7.txt data installer Public testdata