在shell中把ls的輸出存進乙個陣列變數中

2021-07-29 05:35:08 字數 821 閱讀 1885

將ls的輸出存到filelist陣列中:

c=0for file in `ls`

dofilelist[$c]=$file

((c++))

done 或者

set-a myfiles

index=0

forfin`ls`;domyfiles[index]=$f;letindex=index+1;done

注:用這種方法,如果檔名中有空格的話,會將乙個檔名以空格為分隔符分成多個存到陣列中,最後出來的結果就是錯誤的。

以下**,這種賦值方法可以使獲取到的檔名正確。

c=0for file in *

dofilelist[$c]="$file"  (為了準確起見,此處要加上雙引號「」)

((c++))

done

把filelist陣列內容輸出到螢幕上:

b=0while [ $b -lt $c ]

doecho $

((b++))

done

或者b=0

for value in $

do echo $value

done

在螢幕上輸出filelist陣列長度:

echo $

注:用$ 可以得到陣列長度

理解 Linux 中 ls 的輸出

理解 linux 中ls的輸出 ls 的輸出會因各 linux 版本變種而略有差異,這裡只討論一般情況下的輸出。下面是來自 man page 關於 ls 的描述 man ls ls list directory contents列出資料夾中的內容。但一般我們會配合著 l 引數使用,將輸出展示成列表形...

shell 輸出重定向在除錯中的使用

1.在除錯shell時可以將標準輸出,錯誤輸出一起重定向到乙個檔案中,這樣尤其在除錯程式呼叫shell至關重要。2.在shell中列印環境資訊,到日誌檔案,幫助分析呼叫環境是否正確。echo who ma i log.txt 2 1 echo id u log.txt 2 1 echo whoami...

Linux的ls命令在Windows中的應用

注 ls是linux中的命令。其作用是列出當前目錄下的檔案與資料夾。效果等同於wndows中的dir指令。如下圖 下面是詳細步驟 步驟一.在桌面新建乙個文字文件 txt檔案 步驟二.開啟這個文字文件,在裡面輸入 步驟三.點選儲存。步驟四.把這個檔名以及格式都改了。修改成 ls.bat。修改期間,會有...