我正在閱讀/ etc/shadow文件,並刪除第二個字段中的任何值等於*或!並且第五個字段中的任何內容都不等於90,然後打印第1個字段,第5個字段和第6個字段,並在每行末尾添加主機名並將其輸出到文件。我不知道我的最佳選擇是什麼在這裏的..../etc/shadow文件Linux中的最佳命令,以匹配數據,然後打印某些數據
例如
foo:$6$91s00atqlok0b861$7IJdhycBWBwipe82y6kaoXnAbwqhJNPyxXIiWzCFpb0um2aEquBKIaH5OAlGRAeua2F6jk6qQiicpC21aiTvt.:12345:7:90:7:30::
foofoo:!!:123456:0:90:7:::
foofoofoo:$6$5WSZ.Gde$RGkaObncaycypz9.wnerXauAPyIqyDQzh9cyUPuZ4LiNfRDGIS5DasngA5x51HPczH9NsE8mvkClIOs7a1K3p0:1234:0:99999:7:::
輸出
foofoofoo, 99999, 7, hostname
Field1=username
Field2=password
Field5=# days p/w needs to be changed
Field6=# of days to warn
多感謝
'awk'是你的朋友。 – codeforester
awk。只需用'/ etc/shadow'和預期的輸出來更新你的問題。 –
閱讀更多在[標籤:awk]標籤信息頁面:https://stackoverflow.com/tags/awk/info –