导航:首页 > 操作系统 > linuxshell当前目录

linuxshell当前目录

发布时间:2022-05-10 01:05:54

A. shell编程中,如何获取当前执行shell的路径

常见的一种误区,是使用pwd命令,该命令的作用是“print name of current/working directory”,这才是此命令的真实含义,当前的工作目录,这里没有任何意思说明,这个目录就是脚本存放的目录。所以,这是不对的。你可以试试bash shell/a.sh,a.sh 内容是 pwd,你会发现,显示的是执行命令的路径/home/june,并不是 a.sh 所在路径:/home/june/shell/a.sh

另一个误人子弟的答案,是$0,这个也是不对的,这个$0是Bash环境下的特殊变量,其真实含义是:

Expands to the name of the shell or shell script. This is set at shell initialization. If bash is invoked with a file of commands, $0 is set to the name of that file. If bash is started with the -c option, then $0 is set to the first argument after the string to be executed, if one is present. Otherwise, it is set to the file name used to invoke bash, as given by argument zero.

这个$0有可能是好几种值,跟调用的方式有关系:

B. linux命令中,复制道当前目录怎么写

1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。

C. Linux如何使用shell查看目录及其子目录下的所有文件

执行tree命令即可按树形结构输出指定目录下的所有子目录和所有文件

D. linux Shell怎么查找指定文件,并进入该文件所在目录,目录有空格

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

E. linux下Shell编程:输出当前目录下所有文件,并输出文件总数和目录总数

#!/bin/sh

cd $1
file=`ls -a`
catlog=0
filenum=0

for loop in $file
do
if [ -d "$loop" ];then
catlog=`expr $catlog + 1`
else
filenum=`expr $filenum + 1`
echo "$loop"
fi
done

echo -e "the catlog number is $catlog"
echo -e "the catlog number is $filenum"

F. linux shell 打开执行目录

可以在shell中定义变量,然后使用变量,实现高效的跳转到对应目录,免去了输入较长的地址。
比如我装的LAMP环境,每次跑起环境都挺麻烦的。具体命令如下:
cd /opt/lamppsudo ./manager.run Linux命令需求可查询“Linux命令大全”。

G. 如何在linux中使用shell脚本遍历指定目录的文件,将创建时间大于指定时间的文件,复制到指定目录下。

大于指定时间?最简单的就是直接find里面指定吧。例如,查找当前目录及其子目录所有mtime大于1天的文件:
find
/path
-type
f
-mtime
+1
即可,/path
可以换成其他路径,-mtime
+1
表示时间大于1天。-1的话表示小于一天也就是1天之内的。

H. 在linux下编写shell脚本,判断当前目录下所有文件类型,如果是普通文件,显示内容,如果是目录

forfilein*
do
if[-f"$file"]
then
if[-s"$file"]
then
printf"File:$file "
cat"$file"
else
rm"$file"
fi
else[-d"$file"]
printf"Directory:$file "
ls"$file"
fi
printf" "
done

I. 如何用linux命令进入一个目录 并且执行该目录下的一个文件

用linux命令进入一个目录 并且执行该目录下的一个文件方法如下:

1、打开文件vi(如/etc里面有一个文件hosts,要打开这个文件执行vi hosts);

2、进入编辑模式i,a(打开hosts后不能进行编辑,输入i之后出现---insert就进入编辑模式可以进行编辑了);

3、退出编辑模式,按下Esc;

4、进入命令模式,按下;

5、退出但不保存q;

6、退出保存wq或x;

7、保存w。

J. Linux Shell脚本如何获取当前路径

解答如下:

获取脚本运行所在目标。常用三个方法,推荐第三个

#!/bin/bash
Cur_Dir="$(pwd)"
Cur_Dir="$(cd`dirname$0`;pwd)"
Cur_Dir="$(cd-P"$(dirname"${BASH_SOURCE[0]}")"&&pwd)"
echo${Cur_Dir}
cd${Cur_Dir}
阅读全文

与linuxshell当前目录相关的资料

热点内容
苹果账户更新app被禁用怎么办 浏览:967
转转app怎么解除永久封杀 浏览:824
国家反诈app怎么注册不了 浏览:342
32岁女程序员迷茫 浏览:47
红米无法访问data文件夹 浏览:687
国家反诈中心app为什么审核不过去 浏览:873
linuxwindows启动盘 浏览:811
百度贴吧app怎么看访客 浏览:435
javaio文件复制 浏览:409
app上海总部在什么楼里 浏览:373
格式化硬盘dos命令 浏览:496
红茶可以缓解压力 浏览:999
腾讯云怎么弄七十多一年云服务器 浏览:721
java按钮设置图片 浏览:866
php数字分页代码 浏览:793
旅游业程序员 浏览:403
区块链第三代加密数字资产 浏览:525
把播放清单放在云服务器上 浏览:882
phpppt下载 浏览:302
1929pdf 浏览:366