2014-12-06 73 views
0

我必須寫一個bash腳本的大學,文中說:如何在bash腳本中用awk使用select?

寫bash腳本,讓root用戶,讓所有用戶的機器 的列表。選擇一個用戶,使用select,將需要 表示一個目錄(指示絕對路徑)。在 的這一點,輸出將顯示 用戶擁有的所有文件文件夾的列表,按照文件的大小以升序排列。

要檢查是否是root用戶,我用:

if[ "$(id -u)" = 0 ]; then 

拿到機器的用戶我想用awk的名單:

awk -F':' '{ print$1}' /etc/passwd 

如何使用用awk選擇? 有沒有使用awk的另一種方法?

非常感謝你提前

+0

你可以以同樣的方式使用剪切,但我認爲你選擇的問題不會因此而消失。我**的方式干擾聲明是,你應該提供一個用戶列表,閱讀一些輸入,然後迴應。 – tink 2014-12-06 03:02:45

回答

2

這裏是select語句用awk的方式,你需要完成其餘爲你的功課(例如,排序結果)

#!/usr/bin/env bash 

select user in $(awk -F ":" '{print $1}' /etc/passwd) 
do 
    read -p "input the absolute directory: " path 
    find $path -type f -user "$user" -ls 
done