導航:首頁 > 文件類型 > linux獲取文件夾內所有文件名

linux獲取文件夾內所有文件名

發布時間:2022-09-17 11:15:59

linux列出當前目錄下的文件和目錄用什麼命令

ls命令。

Is是List的縮寫,表示顯示文件目錄列表。(只顯示非隱藏文件的文件名)

參數:回

-a:--all的縮寫,顯答示所有文件,包括隱藏文件(以 . 開頭的文件)

-L:列出長數據串,顯示文件的大小,時間等數據信息。

ls -la:表示顯示文件包括的所有信息。

(1)linux獲取文件夾內所有文件名擴展閱讀:

注意事項

linux查看日誌文件內容命令有

1、cat:由第一行開始顯示文件內容。

2、tac:從最後一行開始顯示,可以看出tac是cat的倒著寫。

3、nl:顯示的時候,順道輸出行號。

4、more:一頁一頁的顯示文件內容

5、less與more類似,但是比more更好的是,他可以往前翻頁。

6、head:只看頭幾行。

7、tail:只看尾巴幾行。

可以使用man [命令]來查看各個命令的使用文檔,如 :man cp。

Ⅱ 如何用shell獲取linux目錄下的文件名

獲取所有常規文件的文件名並列印出來的腳本listfile.sh如下

#!/bin/bash

dir="/*"
dir=$1$dir
for f in $dir
do
if [ -f $f ]
then
echo $f
fi
done

使用方法:
$ listfile.sh PATH

原理:
PATH參數是路徑,將路徑後加上「/*」,代表該目錄下的所有文件和目錄名,利用for循環比較每個文件是否是常規文件( -f比較運算符),若if表達式為真則列印

舉例:
ls -l
total 36
-rwxrwxr-x 1 lipeng lipeng 48 Nov 29 20:08 aaa.sh
drwxrwxr-x 2 lipeng lipeng 4096 May 4 2015 byteorder
drwxrwxr-x 8 lipeng lipeng 4096 May 3 2015 hello
-rwxrwxr-x 1 lipeng lipeng 122 Nov 29 20:16 listfile.sh
-rw-rw-r-- 1 lipeng lipeng 177 Aug 1 03:10 main.cpp
drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 16:42 matrix
drwxrwxr-x 5 lipeng lipeng 4096 Apr 28 2015 modbus
drwxrwxr-x 2 lipeng lipeng 4096 Sep 13 10:10 shtest
drwxrwxr-x 2 lipeng lipeng 4096 Sep 16 18:21 test

$ ./listfile.sh .
./aaa.sh
./listfile.sh
./main.cpp

Ⅲ Linux下一個文件夾下的文件是動態增加的,如何編程獲取文件名

可以使用opendir, readdir和closedir來讀取目錄下文件項。

Ⅳ linux編程怎麼獲得當前文件夾的文件夾名

1.使用絕對路徑執行的shell文件(如/home/xxx/binfile)
直接使用dirname $0即可
2.對於使用相對路徑執行的shell文件(如 ./xxx/binfile)
pwd與dirname結合使用;pwd獲得的是執行當前shell文件時,用戶所在的位置;dirname可以獲得相對於那個位置的偏移:
例如某shell文件所在的位置是/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src/notify_serv/shell文件名

1 #!/bin/sh
2 pwd
3 echo `dirname $0`
執行後輸出
/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src
./notify_serv

Ⅳ linux 怎麼查看文件夾下所有文件名字

命令直接ls /path/to/dir就可以看dir目錄下所有文件了文件夾了

Ⅵ Linux 編程問題之遞歸取目錄下所有文件名與路徑

樓主,你好!

在BLP上正好見過這個程序,編譯好執行的時候,傳遞的參數為要列印的目錄

代碼如下,純C寫的,希望對你有幫助

#include <unistd.h>
#include <stdio.h>
#include <dirent.h>

#include <string.h>
#include <sys/stat.h>
#include <stdlib.h>

void printdir(char* dir, int depth)
{
DIR *dp;
struct dirent *entry;
struct stat statbuf;

if( (dp = opendir(dir)) == NULL )
{
fprintf(stderr, "cannot open directory: %s\n", dir);
return;
}

chdir(dir);
while( (entry = readdir(dp)) != NULL)
{
lstat(entry->d_name, &statbuf);
if( S_ISDIR(statbuf.st_mode) )
{
if( strcmp(".", entry->d_name) == 0 || strcmp("..", entry->d_name) == 0 )
continue;
printf("%*s%s/\n", depth, "", entry->d_name);
printdir(entry->d_name, depth+4);
}
else
printf("%*s%s\n", depth, "", entry->d_name);
}
chdir("..");
closedir(dp);
}

int main(int argc, char* argv[])
{
char *topdir = ".";
if( argc >= 2 )
topdir=argv[1];
printf("Directory scan of %s\n", topdir);
printdir(topdir, 0);
printf("Done.\n");

exit(0);
}

Ⅶ Linux批量提取文件名

簡單的獲取文件名的話,可以輸入命令:ls,如果需要把整個磁碟所有文件名字打出的話,需要寫個腳本,循環遞歸下。

Ⅷ linux 獲取文件名的問題

basename是最常用的,除此之外,Bash中還有個用字元串處理的方法(適用於bash):
for i in /var/html/*
do
echo $i #全路徑內名
echo ${i##*/} #文件名
done#表示去除從指定容字元向前所有的字元;##表示最大匹配。
%表示去除從指定字元向後所有的字元;%%表示最大匹配。

Ⅸ Linux系統中獲取路徑的文件名的方法

這篇文章主要介紹了系統中獲取路徑的文件名的方法,文中總結出了兩條,需要的朋友可以參考下
代碼如下:
[[email protected]
]#basename
/root/aaa/bbb/dabu.txt
顯示:
代碼如下:
dabu.txt
#獲取路徑的文件名
shell腳本中如何獲得腳本文件所在路徑?
方法一:
代碼如下:
[[email protected]
]#DIR=$(cd
"$(dirname
"$0")";
pwd)
[[email protected]
]#echo
$DIR
但是像這種dirname
"$0"這種寫法,在遇到source命令時會得到錯誤的結果。
方法二:
代碼如下:
[[email protected]
]#echo
"$(
cd
"$(
dirname
"${BASH_SOURCE[0]}"
)"
&&
pwd
)"
上面一行命令可以獲得腳本的絕對輪徑,無論你在何處調用這個腳本。
但是如果含有軟鏈接,就無法使用了。所以,我們為了能正確解析指向腳本的軟鏈接,可以使用下面的多行命令:
代碼如下:
SOURCE="${BASH_SOURCE[0]}"
while
[
-h
"$SOURCE"
];
do
#
resolve
$SOURCE
until
the
file
is
no
longer
a
symlink
DIR="$(
cd
-P
"$(
dirname
"$SOURCE"
)"
&&
pwd
)"
SOURCE="$(readlink
"$SOURCE")"
[[
$SOURCE
!=
/*
]]
&&
SOURCE="$DIR/$SOURCE"
#
if
$SOURCE
was
a
relative
symlink,
we
need
to
resolve
it
relative
to
the
path
where
the
symlink
file
was
located
done
DIR="$(
cd
-P
"$(
dirname
"$SOURCE"
)"
&&
pwd
)"
也可與source,bash
-c命令使用
但是,如果你在腳本中使用先cd切換到其他目錄,在運行時上面的命令片段時,則上面的命令不能等到正確的結果。可以參考關於$CDPATH
陷阱的文章。想理解它如何其作用的,可以運行下面的代碼:
代碼如下:
#!/bin/bash
SOURCE="${BASH_SOURCE[0]}"
while
[
-h
"$SOURCE"
];
do
#
resolve
$SOURCE
until
the
file
is
no
longer
a
symlink
TARGET="$(readlink
"$SOURCE")"
if
[[
$SOURCE
==
/*
]];
then
echo
"SOURCE
'$SOURCE'
is
an
absolute
symlink
to
'$TARGET'"
SOURCE="$TARGET"
else
DIR="$(
dirname
"$SOURCE"
)"
echo
"SOURCE
'$SOURCE'
is
a
relative
symlink
to
'$TARGET'
(relative
to
'$DIR')"
SOURCE="$DIR/$TARGET"
#
if
$SOURCE
was
a
relative
symlink,
we
need
to
resolve
it
relative
to
the
path
where
the
symlink
file
was
located
fi
done
echo
"SOURCE
is
'$SOURCE'"
RDIR="$(
dirname
"$SOURCE"
)"
DIR="$(
cd
-P
"$(
dirname
"$SOURCE"
)"
&&
pwd
)"
if
[
"$DIR"
!=
"$RDIR"
];
then
echo
"DIR
'$RDIR'
resolves
to
'$DIR'"
fi
echo
"DIR
is
'$DIR'"

Ⅹ linux shell腳本怎麼獲取目錄下所有txt文件名稱

執行抄如下三條命令即可:
(1)、$script myresultfile
(2)、$ls -al *.txt
(3)、$exit

此時,該目錄下的所有 txt 文件名稱就會以長格式保存在 myresultfile 文件中了。

然後你再使用 SHELL 編程的功能把那些無用的列去掉即可。

閱讀全文

與linux獲取文件夾內所有文件名相關的資料

熱點內容
有什麼免費加速網站的cdn 瀏覽:781
哪個文件存在最安全 瀏覽:199
淘寶導航欄分割線代碼 瀏覽:271
win10開不了機按f8沒用 瀏覽:12
河南營銷網站推廣多少錢 瀏覽:135
華為暢享6手機文件管理 瀏覽:939
linux驅動環境 瀏覽:893
ae用什麼打開文件 瀏覽:877
湖南嶽陽大數據中心 瀏覽:710
DSP大數據公司 瀏覽:510
win10檢測不到u盤啟動 瀏覽:941
電腦文件怎麼重命名文件 瀏覽:507
哪個協議用來傳輸文件協議 瀏覽:61
ce改股票教程 瀏覽:513
如何做一個數據統計資料庫 瀏覽:181
手機內存書旗小說是哪個文件夾 瀏覽:879
蘋果6plus怎麼能拍照片更快 瀏覽:55
同步步進電機如何編程 瀏覽:341
手機自動刪文件 瀏覽:565
南京市婦幼app如何查看體檢報告 瀏覽:603

友情鏈接