两者的实际用途是什么,pushd以及popd何时使用这两个命令优于cdand cd -?
编辑:我正在寻找一些使用这两个命令的实际示例或将堆栈与目录保持在一起的原因(当您有制表符完成、cd -、缩短的别名cd ..等时)。
在终端中,如何定义一个键以转到使用cd命令更改目录时所在的上一个目录?
例如,I'm in /opt/soft/binand I cdinto/etc/squid3并且我想回到第一个目录。
我有一个脚本,当我从命令行运行它时cron,它可以工作,但是当我用它来安排它时,我收到了找不到文件或命令的错误。我的问题是双重的:
当我使用 调度 cron 作业时crontab -e,它是否使用我的用户 ID 作为其权限的基础?或者它是否使用某种类型的 cron 用户 ID 及其相关权限?
启动 cron 作业时,工作目录是什么?它是我指定要运行的脚本的目录,还是其他目录?
这是我的 cron 工作:
15 7 * * * /home/xxxx/Documents/Scripts/email_ip_script.sh
Run Code Online (Sandbox Code Playgroud)
这是实际的脚本:
vIP_ADDR="`curl automation.whatismyip.com/n09230945.asp`"
echo "$vIP_ADDR"
sed "s/IPADDR/$vIP_ADDR/g" template.txt > emailmsg.txt
ssmtp XXXXX@gmail.com < emailmsg.txt
Run Code Online (Sandbox Code Playgroud)
以下是我在查看由mail产生的消息时得到的错误cron:
sed: can't read template.txt: No such file or directory
/home/xxxx/Documents/Scripts/email_ip_script.sh: line 15: ssmtp: command not found
Run Code Online (Sandbox Code Playgroud)
它找不到,template.txt但它与脚本位于同一目录中。它也不能运行ssmtp,但我可以作为我的用户。我缺少什么才能使其正常工作?
is there any way (what is the easiest way in bash) to combine the following:
mkdir foo
cd foo
Run Code Online (Sandbox Code Playgroud)
的联机帮助页mkdir没有描述类似的内容,也许有一个花哨的版本mkdir?我知道这cd必须是 shell 内置的,所以花哨的也是如此mkdir......
别名?
我一直想知道为什么cd不是程序,但从未设法找到答案。
有谁知道为什么会这样?
我想经常在完全不相关的路径中的目录之间切换,例如/Project/Warnest/docs/和~/Dropbox/Projects/ds/test/。
但我不想一直打字cd /[full-path]/。是否有任何快捷命令可以切换到以前工作过的目录?
我能想到的一种解决方案是将环境变量添加到我bash .profile的常用目录中,cd并使用这些变量添加到它们中。
但是有没有其他解决办法呢?
我一直在关注的教程之一简要说明cd .没有用。当尝试复制符号链接递归中OP 显示的问题时- 是什么让它“重置”?,我也尝试过cd .,它显示出与 OP 描述的相同效果(增长$PWD变量),可以用cd -P.
这让我想知道,有没有人实际上想要使用的情况cd . ?
我想运行一个脚本来简单地更改当前工作目录:
#!/bin/bash
cd web/www/project
Run Code Online (Sandbox Code Playgroud)
但是,运行后,当前密码保持不变!我怎样才能做到这一点?
我将我的代码作为 sshfs 挂载在我的主目录中,但是层次结构很难记住,所以我在我的主目录中创建了一个指向该目录的符号链接。有没有办法当我 cd 到那个符号链接时,而不是 cd 到符号链接,它实际上会 cd 到那个目录?
如果问题不清楚,这里是我正在寻找的一个例子:
foo@foo:~$ ls -l
lrwxrwxrwx 1 foo foo 5 2012-11-14 08:20 foo -> bar/bar
foo@foo:~$ cd foo
foo@foo:~/bar/bar/$
Run Code Online (Sandbox Code Playgroud) 可悲的是,我去年才通过在互联网上偶然发现它才了解到这一点。我很少使用它,以至于当我再次需要它时,我总是忘记它是什么。
你如何更改到以前的目录?