导航:首页 > 操作系统 > 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当前目录相关的资料

热点内容
51单片机1us 浏览:218
上海突发天气预警推送什么app 浏览:740
压缩机的供油 浏览:971
django开发的网站源码 浏览:511
数据库管理项目源码 浏览:122
最新骆驼源码app下载 浏览:49
网络答题用什么app模板 浏览:550
linux服务器如何配置多域名 浏览:250
pythonlibrary中文 浏览:551
客户管理系统破解源码 浏览:994
程序员皮皮 浏览:411
一个单片机一个程序 浏览:101
python调用系统时间 浏览:767
鸿蒙20怎么弄大文件夹 浏览:615
美团的服务器是什么 浏览:359
axure原型设计精髓pdf 浏览:379
svox文件夹有用吗 浏览:508
怎样才可以给软件添加密钥 浏览:589
光纤通信原理pdf 浏览:209
c需要用什么编译器 浏览:705