linux如何获取文件的文件名|Linux系统中获取路径的文件名的方法

linux如何获取文件的文件名|Linux系统中获取路径的文件名的方法的第1张示图

❶ linux命令行怎样查看文件名为

1.列出文件清单命令:ls ls命令能够列出当前目录下的所有内容。回ls 命令的执行方式为:答 # ls [-选项] [文件名或者目录名] 进入到Linux命令行中后,我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得。

❷ 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/sh2 pwd3 echo `dirname $0`执行后输出/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src./notify_serv

❸ linux 如何提取文件夹名

提取抄当前文件夹名称可以结合袭使用pwd命令和basename命令,pwd命令返回当前工作路径,basename命令去掉前导的目录部分后打印“名称”。$ basename `pwd`注意:pwd两侧为反引号`,作用是运行两个反引号之间的命令,并且将命令运行的结果返回。提取当前文件夹的所有子文件夹可以使用find命令,设置查询文件类型参数为-type为目录d,还可以设置-maxdepth参数为1,不查询二级子目录。$ find . -type d -maxdepth 1

❹ linux find 怎样取得文件名呢

find ./ -name "*.m" -exec grep -l 'myCenter' {} \; grep加入-l选项,就能将找到的文件名列出linux中的find命令——查找文件名 1.在某目录下查找名为“elm.cc”的文件find /home/lijiajia/ -name elm.cc 2.查找文件名中包含某字符(如"elm")的文件find /home/lijiajia/ -name '*elm*'find /home/lijiajia/ -name 'elm*'find /home/lijiajia/ -name '*elm' 3.根据文件的特征进行查询find /home/lijiajia/ -amin -10 #查找在系统中最后10分钟访问的文件find /home/lijiajia/ -atime -2 #查找在系统中最后48小时访问的文件find /home/lijiajia/ -empty #查找在系统中为空的文件或者文件夹find /home/lijiajia/ -group cat # 查找在系统中属于groupcat 的文件(试了,命令不对。)find /home/lijiajia/ -mmin -5 # 查找在系统中最后5 分钟里修改过的文件find /home/lijiajia/ -mtime -1 #查找在系统中最后24 小时里修改过的文件find /home/lijiajia/ -nouser #查找在系统中属于作废用户的文件(不明白是什么意思)find /home/lijiajia/ -amin 10 #查找在系统中最后10分钟访问的文件find /home/ftp/pub -user lijiajia #查找在系统中属于lijiajia这个用户的文件(PS:以上都是在 /home/lijiajia/文件夹下进行的操作) 4.使用混合查找方式查找文件find /tmp -size +10000000c -and -mtime +2 #查找/tmp目录中大于10000000字节并且在48小时内修改的某个文件find /tmp -user tom -or -user george #查找/tmp目录中属于tom或者george这两个用户的文件find /tmp ! -usr fred #查找/tmp目录中不属于fred的文件 5.查找并显示文件find /home/lijiajia/ -name 'elm.cc' -ls #在目录下查找名为“elm.cc”的文件,并显示这些文件的信息

❺ 如何用shell获取linux目录下的文件名

获取所有常规文件的文件名并打印出来的脚本listfile.sh如下#!/bin/bashdir="/*"dir=$1$dirfor f in $dirdo if [ -f $f ] then echo $f fidone使用方法:$ listfile.sh PATH原理:PATH参数是路径,将路径后加上“/*”,代表该目录下的所有文件和目录名,利用for循环比较每个文件是否是常规文件( -f比较运算符),若if表达式为真则打印举例:ls -ltotal 36-rwxrwxr-x 1 lipeng lipeng 48 Nov 29 20:08 aaa.shdrwxrwxr-x 2 lipeng lipeng 4096 May 4 2015 byteorderdrwxrwxr-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.cppdrwxrwxr-x 2 lipeng lipeng 4096 Sep 13 16:42 matrixdrwxrwxr-x 5 lipeng lipeng 4096 Apr 28 2015 modbusdrwxrwxr-x 2 lipeng lipeng 4096 Sep 13 10:10 shtestdrwxrwxr-x 2 lipeng lipeng 4096 Sep 16 18:21 test$ ./listfile.sh ../aaa.sh./listfile.sh./main.cpp

❻ linux 怎么查看文件夹下所有文件名字

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

❼ 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$SOURCEuntilthefileisnolongerasymlinkDIR="$(cd-P"$(dirname"$SOURCE")"&&pwd)"SOURCE="$(readlink"$SOURCE")"[[$SOURCE!=/*]]&&SOURCE="$DIR/$SOURCE"#if$SOURCEwasarelativesymlink,weneedtoresolveitrelativetothepathwherethesymlinkfilewaslocateddoneDIR="$(cd-P"$(dirname"$SOURCE")"&&pwd)"也可与source,bash-c命令使用但是,如果你在脚本中使用先cd切换到其他目录,在运行时上面的命令片段时,则上面的命令不能等到正确的结果。可以参考关于$CDPATH陷阱的文章。想理解它如何其作用的,可以运行下面的代码:代码如下:#!/bin/bashSOURCE="${BASH_SOURCE[0]}"while[-h"$SOURCE"];do#resolve$SOURCEuntilthefileisnolongerasymlinkTARGET="$(readlink"$SOURCE")"if[[$SOURCE==/*]];thenecho"SOURCE'$SOURCE'isanabsolutesymlinkto'$TARGET'"SOURCE="$TARGET"elseDIR="$(dirname"$SOURCE")"echo"SOURCE'$SOURCE'isarelativesymlinkto'$TARGET'(relativeto'$DIR')"SOURCE="$DIR/$TARGET"#if$SOURCEwasarelativesymlink,weneedtoresolveitrelativetothepathwherethesymlinkfilewaslocatedfidoneecho"SOURCEis'$SOURCE'"RDIR="$(dirname"$SOURCE")"DIR="$(cd-P"$(dirname"$SOURCE")"&&pwd)"if["$DIR"!="$RDIR"];thenecho"DIR'$RDIR'resolvesto'$DIR'"fiecho"DIRis'$DIR'"

❽ 怎么在Linux中查找某个文件

在 Linux 中查找文件有两种方法。一种是使用 find 命令,另外一种是使用 locate 命令。

1、Find 命令

使用 Linux find 命令可以用不同的搜索标准如名字、类型、所属人、大小等来搜索目录树。基本语法如下:

#findpathexpressionsearch-term

下面是使用 find 命令根据文件名来查找特定文件的一个例子:

#find-nametest.file

命令会搜索整个目录树来查找名为 test.file 的文件,并且会提供其存放位置。你可以使用你 Linux 上一个存在的文件名来尝试一下。

find 命令有时会花费几分钟来查找整个目录树,尤其是如果系统中有很多文件和目录的话。要显著减少时间,你可以指定搜索的目录。比如,如果你知道 /var 中存在 test.file,那就没有必要搜索其它目录。这样,你可以使用下面的命令:

#find/var-nametest.file

find 还可以根据时间、大小、所属人、权限等选项搜索文件。要了解更多关于这些选项的信息,你可以使用查看** Linux find 命令**的手册。

#manfind

2、locate 命令

要在Linux中使用locate命令,首先需要安装它。

如果你正在使用 Ubuntu,运行下面的命令来安装 locate:

#apt-getupdate#apt-getinstallmlocate

如果你使用的是 CentOS ,运行下面的命令来安装 locate:

#yuminstallmlocate

locate 是一种比 find 更快的方式,因为它在数据库中查找文件。要更新搜索数据库,运行下面的命令:

#updatedb

使用 locate 查找文件的语法:

#locatetest.file

就像 find 命令一样,locate 也有很多选项来过滤输出。要了解更多你可以查看Linux Locate 命令的手册。

#manlocate

❾ linux 获取文件名的问题

basename是最常用的,除此之外,Bash中还有个用字符串处理的方法(适用于bash):for i in /var/html/*do echo $i #全路径内名 echo ${i##*/} #文件名done#表示去除从指定容字符向前所有的字符;##表示最大匹配。%表示去除从指定字符向后所有的字符;%%表示最大匹配。

未经允许不得转载:山九号 » linux如何获取文件的文件名|Linux系统中获取路径的文件名的方法

赞 (0)