页面“Awk skill”与“Shell判断文件是否存在”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
(导入1个版本)
 
(导入1个版本)
 
第1行: 第1行:
=awk 打印最后一列=
 
 
<pre>
 
<pre>
容易混淆的两个变量:NF和$NF两个变量
+
我用应用 判断有更新包才更新
NF是处理行中域的个数
+
if [ ! -f "/update/warpack/read_interface.war" ]; then
$NF 是输出处理行中最后一个域的内容
+
echo "not read warpack exit now"
$1 处理行中第一个域的内容 ,依此类推
+
exit 1
 +
fi
  
sudo netstat  -nlpt
 
  
Proto Recv-Q Send-Q Local Address          Foreign Address        State      PID/Program name   
+
. shell判断文件,目录是否存在或者具有权限
tcp        0     0 127.0.0.1:3306          0.0.0.0:*              LISTEN      939/mysqld         
+
2. #!/bin/sh
 +
3.
 +
4. myPath="/var/log/httpd/"
 +
5. myFile="/var /log/httpd/access.log"
 +
6.
 +
7. # 这里的-x 参数判断$myPath是否存在并且是否具有可执行权限
 +
8. if [ ! -x "$myPath"]; then
 +
9. mkdir "$myPath"
 +
10. fi
 +
11.
 +
12. # 这里的-d 参数判断$myPath是否存在
 +
13. if [ ! -d "$myPath"]; then
 +
14. mkdir "$myPath"
 +
15. fi
 +
16.
 +
17. # 这里的-f参数判断$myFile是否存在
 +
18. if [ ! -f "$myFile" ]; then
 +
19. touch "$myFile"
 +
20. fi
 +
21.
 +
22. # 其他参数还有-n,-n是判断一个变量是否是否有值
 +
23. if [ ! -n "$myVar" ]; then
 +
24. echo "$myVar is empty"
 +
25. exit 0  
 +
26. fi
 +
27.
 +
28. # 两个变量判断是否相等
 +
29. if [ "$var1" = "$var2" ]; then
 +
30. echo '$var1 eq $var2'
 +
31. else
 +
32. echo '$var1 not eq $var2'
 +
33. fi
  
tcp        0      0 0.0.0.0:22              0.0.0.0:*              LISTEN      741/sshd           
 
tcp        0      0 127.0.0.1:7070          0.0.0.0:*              LISTEN      2566/ss-local     
 
 
tcp6      0      0 :::21                  :::*                    LISTEN      696/vsftpd         
 
tcp6      0      0 :::22                  :::*                    LISTEN      741/sshd           
 
evan@latop:~/rpm/centos7/nginx/SPECS$ sudo netstat  -nlpt | awk '{print $NF}'
 
servers)
 
name
 
939/mysqld
 
741/sshd
 
2566/ss-local
 
696/vsftpd
 
741/sshd
 
  
 
</pre>
 
</pre>
  
 
 
cat b | awk NR%2==1 #单数行
 
 
=see also=
 
=see also=
[http://blog.linuxchina.net/?p=1467 awk中的NR和FNR的区别]
+
[https://www.cnblogs.com/emanlee/p/3583769.html shell bash判断文件或文件夹是否存在]
 
+
[[category:shell]]
[https://blog.csdn.net/stpeace/article/details/46848873 awk基本用法简介]
 
 
 
[https://blog.csdn.net/david_xtd/article/details/25888907 awk取最后一列]
 
 
 
[https://blog.csdn.net/liuxiao723846/article/details/55003749?utm_source=blogxgwz8 awk:打印某列以后的所有列]
 
[[category:shell]]
 

2019年10月14日 (一) 13:52的版本

我用应用 判断有更新包才更新 
if [ ! -f "/update/warpack/read_interface.war" ]; then
echo "not read warpack exit now"
exit 1
fi 


. shell判断文件,目录是否存在或者具有权限 
2. #!/bin/sh 
3. 
4. myPath="/var/log/httpd/" 
5. myFile="/var /log/httpd/access.log" 
6. 
7. # 这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 
8. if [ ! -x "$myPath"]; then 
9. mkdir "$myPath" 
10. fi 
11. 
12. # 这里的-d 参数判断$myPath是否存在 
13. if [ ! -d "$myPath"]; then 
14. mkdir "$myPath" 
15. fi 
16. 
17. # 这里的-f参数判断$myFile是否存在 
18. if [ ! -f "$myFile" ]; then 
19. touch "$myFile" 
20. fi 
21. 
22. # 其他参数还有-n,-n是判断一个变量是否是否有值 
23. if [ ! -n "$myVar" ]; then 
24. echo "$myVar is empty" 
25. exit 0 
26. fi 
27. 
28. # 两个变量判断是否相等 
29. if [ "$var1" = "$var2" ]; then 
30. echo '$var1 eq $var2' 
31. else 
32. echo '$var1 not eq $var2' 
33. fi 


see also

shell bash判断文件或文件夹是否存在