linux当前shell程序的文件名|如何用shell获取linux目录下的文件名

linux当前shell程序的文件名|如何用shell获取linux目录下的文件名的第1张示图

㈠ linux 如何设置可执行程序的文件名 急急急 在线等

是说脚本吗- -。 脚本一般是.sh 如果是c编译产生的可执行文件还可以是.o一般没有扩展名也可以- -。linux下,当你使用./xxx运行一个程序时,首先是SHELL来接管你的输入,然后用fork派生子进程,最后用execv系列将你的那个程序的代码交给内核1。检查你运行的文件的属性,其属性在它的I节点中描述,如果你的那个文件不是可执行的属性,结果就会拒绝执行,如果有可执行的属性,但可执行的权限高于你目前正在使用的用户的权限,拒绝执行2。检查是SHELL文件吗?如果是,调用相应的SHELL来解析你的这个脚本文件3。是ELF文件格式吗??是coff文件格式吗?是a.out文件格式吗?如果是其中任何一种,并且当前的LINUX内核都支持这三种文件格式,那么就由操作系统内核分析你的文件格式,去掉文件头信息,将真正的代码,数据等加载进内存(实际过程并不是这样的,只不过为了描述简单,所以省略了很多细节,更多详细说明,请参见内核中的execv系统调用)…4.等待系统的进程调度,当内核选中你的那个程序的时候,你的那个程序就得到运行了

㈡ Linux 下使用 shell 批量修改文件名的三种方法

1、通过sed替换 [[email protected] wolf]# find / -type f -name wolf.log /wolf.log /tmp/wolf.log /root/wolf/wolf.log [[email protected] wolf]# sed -i 's#wolf#yujing#g' find / -type f -name wolf.log [[email protected] wolf]# find / -type f -name "wolf.log" | xargs cat yujing yujing yujing [[email protected] wolf]# 2、通过变量子串替换 vi laolang.log wolf_20170806_1_wolf.jpg wolf_20170806_2_wolf.jpg wolf_20170806_3_wolf.jpg wolf_20170806_4_wolf.jpg wolf_20170806_5_wolf.jpg wolf_20170806_6_wolf.jpg wolf_20170806_7_wolf.jpg wolf_20170806_8_wolf.jpg wolf_20170806_9_wolf.jpg wolf_20170806_10_wolf.jpg [[email protected] data]# touch cat laolang.log |tr "\n" " " [[email protected] data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r–r– 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg [[email protected] data]# f=wolf_20170806_10_wolf.jpg [[email protected] data]# echo $f wolf_20170806_10_wolf.jpg [[email protected] data]# echo ${f%wolf*.jpg} wolf_20170806_10_ [[email protected] data]# mv $f echo ${f%wolf*.jpg}.jpg [[email protected] data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r–r– 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg [[email protected] data]# for f in ls *wolf.jpg ;do mv $f echo ${f%wolf*.jpg}.jpg;done [[email protected] data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r–r– 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg 3、修改扩展名 把上面的jpg更换为log [[email protected] data]# f=wolf_20170806_10_.jpg [[email protected] data]# echo ${f/%jpg/log}  wolf_20170806_10_.log [[email protected] data]# mv $f ${f/%jpg/log} [[email protected] data]# ls apache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpg apache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpg cat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg [[email protected] data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r–r– 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg [[email protected] data]# for f in ls *.jpg ;do mv $f ${f/%jpg/log} ;done [[email protected] data]# ll total 8316 drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9 -rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz -rw-r–r– 1 root root 0 Jul 29 14:16 cat drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1 drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2 drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3 -rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log -rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log 以上就是本次分享的全部内容,现在想要学习的程序员欢迎关注六星社区,获取更多技能与教程。

㈢ 如何用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中编写一个shell脚本将指定目录中的文件的文件全名改为大写,但是命令执行完,shell

bash shell 脚本的方法有多种,现在作个小结。假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限。方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:复制代码 代码如下:cd /data/shell./hello.sh./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工作目录(/data/shell)可能不在执行程序默认的搜索路径之列,也就是说,不在环境变量PASH的内容之中。查看PATH的内容可用 echo $PASH 命令。现在的/data/shell就不在环境变量PASH中的,所以必须加上./才可执行。方法二:以绝对路径的方式去执行bash shell脚本:复制代码 代码如下:/data/shell/hello.sh方法三:直接使用bash 或sh 来执行bash shell脚本:复制代码 代码如下:cd /data/shellbash hello.sh或复制代码 代码如下:cd /data/shellsh hello.sh注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。那么不用指定bash路径自然也好理解了啊,呵呵……。方法四:在当前的shell环境中执行bash shell脚本:复制代码 代码如下:cd /data/shell. hello.sh或复制代码 代码如下:cd /data/shellsource hello.sh前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。

㈤ linux下使用shell批量修改文件名几种方法总

1、通过sed替换[[email protected] wolf]# find / -type f -name wolf.log/wolf.log/tmp/wolf.log/root/wolf/wolf.log[[email protected] wolf]# sed -i 's#wolf#yujing#g' `find / -type f -name wolf.log`[[email protected] wolf]# find / -type f -name "wolf.log" | xargs cat yujingyujingyujing[[email protected] wolf]# 2、通过变量子串替换vi laolang.logwolf_20170806_1_wolf.jpgwolf_20170806_2_wolf.jpgwolf_20170806_3_wolf.jpgwolf_20170806_4_wolf.jpgwolf_20170806_5_wolf.jpgwolf_20170806_6_wolf.jpgwolf_20170806_7_wolf.jpgwolf_20170806_8_wolf.jpgwolf_20170806_9_wolf.jpgwolf_20170806_10_wolf.jpg[[email protected] data]# touch `cat laolang.log |tr "\n" " "`[[email protected] data]# lltotal 8316drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9-rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz-rw-r–r– 1 root root 0 Jul 29 14:16 catdrwxr-xr-x 2 root root 4096 Jul 29 06:00 day1drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3-rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg[[email protected] data]# f=wolf_20170806_10_wolf.jpg[[email protected] data]# echo $fwolf_20170806_10_wolf.jpg[[email protected] data]# echo ${f%wolf*.jpg}wolf_20170806_10_[[email protected] data]# mv $f `echo ${f%wolf*.jpg}.jpg`[[email protected] data]# lltotal 8316drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9-rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz-rw-r–r– 1 root root 0 Jul 29 14:16 catdrwxr-xr-x 2 root root 4096 Jul 29 06:00 day1drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3-rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg[[email protected] data]# for f in `ls *wolf.jpg` ;do mv $f `echo ${f%wolf*.jpg}.jpg`;done[[email protected] data]# lltotal 8316drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9-rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz-rw-r–r– 1 root root 0 Jul 29 14:16 catdrwxr-xr-x 2 root root 4096 Jul 29 06:00 day1drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3-rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg3、修改扩展名把上面的jpg更换为log[[email protected] data]# f=wolf_20170806_10_.jpg[[email protected] data]# echo ${f/%jpg/log} wolf_20170806_10_.log[[email protected] data]# mv $f ${f/%jpg/log} [[email protected] data]# lsapache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpgapache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpgcat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg[[email protected] data]# lltotal 8316drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9-rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz-rw-r–r– 1 root root 0 Jul 29 14:16 catdrwxr-xr-x 2 root root 4096 Jul 29 06:00 day1drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3-rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg[[email protected] data]# for f in `ls *.jpg` ;do mv $f ${f/%jpg/log} ;done[[email protected] data]# lltotal 8316drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9-rw-r–r– 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz-rw-r–r– 1 root root 0 Jul 29 14:16 catdrwxr-xr-x 2 root root 4096 Jul 29 06:00 day1drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3-rw-r–r– 1 root root 251 Jul 29 14:16 laolang.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log-rw-r–r– 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log——————— 建议看看这本适合Linux初学者的书籍《Linux就该这么学》

㈥ 查看当前linux shell的类型,写出相应命令和查询结果

其一,一个名为 "$$" 的特殊参数 表示当前你正在运行的 shell 实例的 PID。此参数是只读的,不能被修改。所以,下面的命令也将显示你正在运行的 shell 的名字:复制代码代码如下:$ ps -p $$PID TTY TIME CMD21666 pts/4 00:00:00 bash上述命令可在所有可用的 shell 中工作。如果你不使用 csh,找到当前使用的 shell 的另外一个办法是使用特殊参数 “$0” ,它表示当前正在运行的 shell 或 shell 脚本的名称。这是 Bash 的一个特殊参数,但也可用在其他 shell 中,如 sh、zsh、tcsh 或 dash。使用 echo 命令可以查看你目前正在使用的 shell 的名称。复制代码代码如下:$ echo $0bash不要被一个叫做 $SHELL 的单独的环境变量所迷惑,它被设置为你的默认 shell 的完整路径。因此,这个变量并不一定指向你当前使用的 shell。例如,即使你在终端中调用不同的 shell,$SHELL 也保持不变。复制代码代码如下:$ echo $SHELL/bin/shell因此,找出当前的shell,你应该使用 $$ 或 $0,但不是 $SHELL。找出当前 Shell 的版本一旦你知道你使用的是哪个 shell,你可能想知道此 shell 的版本。为此,在命令行中输入 shell 并在后面加上 “–version” 参数可以查看版本信息。例如:对于 bash shell :复制代码代码如下:$ bash –versionGNU bash, version 4.3.30(1)-release (x86_64-pc-linux-gnu)Copyright (C) 2013 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later This is free software; you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.对于 zsh shell:</p> <p>$ zsh –versionzsh 5.0.7 (x86_64-pc-linux-gnu)对于 tcsh shell: $ tcsh –version复制代码代码如下:tcsh 6.18.01 (Astron) 2012-02-14 (x86_64-unknown-linux) options wide,nls,dl,al,kan,rh,nd,color,filec对于某些 shell,你还可以使用 shell 特定的变量(例如,$BASHVERSION 或 $ZSHVERSION)。复制代码代码如下:$ echo $BASH_VERSION4.3.8(1)-release

㈦ 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

㈧ shell编程(linux )中如何获得当前鼠标选中的文件名

脚本中写:

cp-l$1/home/dydpc/MyFile/$1.bak

㈨ linux shell 文件如何重命名-具体在里面—很简单

需要准备的材料分别是:电脑、linux连接工具。

1、首先连接上专linux主机,进入命令属行状态。

㈩ shell 编写一程序,列出当前目录下指定文件的文件名,文件的首行为#!/bin/bash

#!/bin/bashforfilein./*doiftest-f$filethenname=`basename$file`first_line=`sed'1!d'$file`if["$first_line"=="#!/bin/bash"]thenecho$namefifidone

我解释下代码,首先,在for循环中遍历当前目录下的所有文件,然后回外层的if判断答当前文件类型,如果是文件,则使用basename $file用来获取当前文件的文件名(包括拓展名)并赋值给变量name中,然后使用sed '1!d' $file获取文件第一行的内容并赋值给变量first_line,再在内层的if中判断第一行的内容是否是“#!inash”,如果是,则打印该文件的文件名。

ps:我也是刚学shell,写了半天才整出来,就当是自己也顺便练手了,哈哈。

我在我电脑上测试了下,没有问题,如果你还有问题请追问。

未经允许不得转载:山九号 » linux当前shell程序的文件名|如何用shell获取linux目录下的文件名

赞 (0)