簡介
例項介紹
假設last -n 5的輸出如下:
[root@www ~]# last -n 5 <==僅取出前五行
root pts/1 192.168.1.100 tue feb 10 11:21 still logged in
root pts/1 192.168.1.100 tue feb 10 00:46 - 02:28 (01:41)
root pts/1 192.168.1.100 mon feb 9 11:41 - 18:30 (06:48)
dmtsai pts/1 192.168.1.100 mon feb 9 11:41 - 11:41 (00:00)
root tty1 fri sep 5 14:09 - 14:10 (00:01)
如果只是顯示最近登入的5個帳號:
#last -n 5 | awk ''
root
root
root
dmtsai
root
如果只是顯示/etc/passwd的賬戶:
#cat /etc/passwd |awk -f ':' ''
root
daemon
binsys
這種是awk+action的示例,每行都會執行action,-f指定域分隔符為』:』。
如果只是顯示/etc/passwd的賬戶和賬戶對應的shell,而賬戶與shell之間以tab鍵分割:
#cat /etc/passwd |awk -f ':' ''
root /bin/bash
daemon /bin/sh
bin /bin/sh
sys /bin/sh
如果只是顯示/etc/passwd的賬戶和賬戶對應的shell,而賬戶與shell之間以逗號分割,而且在所有行新增列名name,shell,在最後一行新增"blue,/bin/nosh"。
cat /etc/passwd |awk -f ':' 'begin end '
name,shell
root,/bin/bash
daemon,/bin/sh
bin,/bin/sh
sys,/bin/sh
....
blue,/bin/nosh
awk工作流程是這樣的:先執行beging,然後讀取檔案,讀入有/n換行符分割的一條記錄,然後將記錄按指定的域分隔符劃分域,填充域,$0則表示所有域,1表示
第乙個域
,1表示第乙個域,
1表示第乙個
域,n表示第n個域,隨後開始執行模式所對應的動作action。接著開始讀入第二條記錄······直到所有的記錄都讀完,最後執行end操作。
搜尋/etc/passwd有root關鍵字的所有行:
#awk -f: '/root/' /etc/passwd
root:x:0:0:root:/root:/bin/bash
這種是pattern的使用示例,匹配了pattern(這裡是root)的行才會執行action(沒有指定action,預設輸出每行的內容)。搜尋支援正則,例如找root開頭的: awk -f: 『/^root/』 /etc/passwd。
搜尋/etc/passwd有root關鍵字的所有行,並顯示對應的shell:
# awk -f: '/root/' /etc/passwd
/bin/bash
這裡指定了action。 使用awk來解析dump檔案
dump檔案是平時工作中經常碰見的,有時候得到乙個dump,但是沒有提供一些更多的資訊,匯入的時候就很可能會有問題。如果某個使用者預設表空間是user,但是dump中的表所屬的表空間是datas01,則匯入的時候會自動轉換表空間。但是如果表中存在lob欄位 且dump的表空間和目標環境的表空間不一致...
NSFileHandle對檔案進行讀寫操作
nslog 路徑 fullpath nsfilehandle filehandle nsfilehandle filehandleforwritingatpath fullpath filehandle seektoendoffile filehandle writedata log datausi...
Unity(C ) 對檔案進行加解密
方法一 直接呼叫加解密方法新增密碼就可以 using system using system.security.cryptography using system.io namespace common 加密類 public class desfile return true return fals...