Questions tagged «shell»

Shell是最常用于类Unix操作系统的命令行解释器的术语,但也用于以更细化的方式与基于GUI的操作系统进行交互。它不仅允许用户从文本界面运行程序,而且经常提供基本的编程功能,例如变量,替换,输出重定向和通配符。

7
为什么在运行ls时隐藏此文件?
编辑:我完全忘记了这个线程。原来我的硬盘坏了。我们不得不根据其他需求重新部署该服务器,因此我终于解决了替换一个坏磁盘的问题,然后我们又恢复了业务。 几周以来,我一直无法弄清为什么我无法删除这个特定文件。作为超级用户,我可以,但是我的shell脚本以其他用户身份运行。所以我去运行ls -la,它不在那儿。但是,如果我将其作为参数调用,它将显示出来!当然,所有者是root,因此我无法删除。 请注意,缺少6535 ... [root@server]# ls -la 653* -rw-rw-r-- 1 svn svn 24002 Mar 26 01:00 653 -rw-rw-r-- 1 svn svn 7114 Mar 26 01:01 6530 -rw-rw-r-- 1 svn svn 8653 Mar 26 01:01 6531 -rw-rw-r-- 1 svn svn 6836 Mar 26 01:01 6532 -rw-rw-r-- 1 svn svn 3308 …

3
Bash:如何知道最后一条命令的输出是否以换行符结尾?
大多数情况下,命令的输出以换行符结束。但是有时却不是,因此下一个shell提示与输出一起打印在同一行中。 例: root @ hostname [〜]#echo -n你好 helloroot @ hostname [〜]# 我总是觉得很烦。 现在,我可以在PS1变量的开头添加“ \ n”,但是大多数情况下,这将打印我不需要的额外一行。 是否可以知道最后一条命令的输出是否以换行符结尾? 解决方案:( 感谢丹尼斯) PS1='$(printf "%$((`tput cols`-1))s\r")\u@\h [\w]\$ '
10 linux  bash  shell  prompt 

3
Find的-true选项:用于什么?
GNU查找(和其他人?)具有-true与正常一起测试-name,-mode,-user等等。从手册页: -true始终为true。 每次看到手册页时,我都会注意到这一点,并想知道它何时会有用。所以,给我一些有用的例子:〜)
10 linux  shell  find 

5
如何更改到我刚刚将该文件移动到的目录?
因此,假设我已经完成: mv ./myfile /to/some/other/place/ 现在,我决定要跟踪该文件,然后进入该目录。 我可以选择鼠标,选择文本,键入“ cd”,然后右键单击以粘贴-我希望使用基于键盘的快捷目录。 那么,什么是最好的方法呢? (通常,如果不同,则特别是Centos + Bash)
10 linux  unix  bash  shell  directory 

1
如何在FreeBSD中更改默认shell?
FreeBSD的默认shell是sh,我实在受不了:自动完成功能非常有限,而rehash命令会杀死我。我觉得自己像个武装和一条腿的人。 如何为root以及所有当前和将来的用户将shell全局更改为- zsh或bash-?
10 bash  shell  freebsd  zsh  sh 

4
如何将VAR从子Shell导出到父Shell?
我有一个Korn Shell脚本 #!/bin/ksh # set the right ENV case $INPUT in abc) export BIN=${ABC_BIN} ;; def) export BIN=${DEF_BIN} ;; *) export BIN=${BASE_BIN} ;; esac # exit 0 <- bad idea for sourcing the file 现在,这些VAR仅在子外壳中导出,但我也希望在我的父外壳中进行设置,因此在出现提示时,这些VAR仍正确设置。 我知道 . .myscript.sh 但是有没有“采购”的方法吗?因为我的用户经常忘记“来源”。 EDIT1:删除“ exit 0”部分-这只是我打字而没有先思考 EDIT2:添加更多有关我为什么需要这样做的详细信息:我的开发人员为2个应用(为了简单起见)编写代码:ABC和DEF。每个应用程序都由单独的用户usrabc和usrdef在生产环境中运行,因此已经设置了$ BIN,$ CFG,$ ORA_HOME等特定于其应用程序的内容。 所以 上面脚本中的ABC的$ BIN = …

4
gpg-agent说代理存在,但是gpg说代理不存在?
我在bashDebian 6.0.6盒子上编写gpg脚本时遇到了一些问题。我有一个脚本,它可以执行一系列操作,并且想要确保在尝试进行操作之前gpg-agent可用。 由于gpg-agent将不执行任何操作,并且如果已在运行时启动则返回成功,因此确保存在该代理非常简单: eval $(gpg-agent --daemon) gpg-agent 开始,或将报告: gpg-agent[21927]: a gpg-agent is already running - not starting a new one 并返回0(成功)(如果已运行)。 当代理已在另一个会话中运行时,就会出现此问题。gpg-agent说它已经在运行...但是gpg它的自我随后声称它不可用。 $ gpg-agent --version gpg-agent (GnuPG) 2.0.19 libgcrypt 1.5.0 $ gpg --version gpg (GnuPG) 1.4.13 $ eval $(gpg-agent --daemon) gpg-agent[21927]: a gpg-agent is already running - not starting a …
9 scripting  shell  gpg 

5
从shell编码为base32
我正在寻找直接从外壳将输入字符串编码为base32编码。我希望在ubuntu中做到这一点,但我想这里的味道并不是特别重要。 是否有任何现有的linux / unix工具可以简单地做到这一点? 类似于以下内容: -bash-3.2$ echo -n 'hello' | base32


4
Windows CMD是否与Unix Shell的exec等效?
Windows中有与Unix Shell的“ exec”等效的东西吗?基本上,我需要避免派生一个新进程,以便保留输入/输出管道以及进程ID。 编辑: 所以,这是我的问题。我有一个启动脚本的进程A,此脚本通过执行进程B结束。我需要A来获取B的所有输出,并能够通过杀死它产生的进程来杀死B(脚本) 。 在Unix上,执行B可以exec完成这项工作。

6
从PATH变量中删除重复的条目
我经常修改.bashrc,然后将其来源。但是,当export PATH="~/bin:~/perl5/bin:$PATH"我的文件中有类似内容 时,PATH每次我获取文件时,环境变量都会增加。 例如,第一次获取.bashrc时,PATH变量由组成~/bin:~/perl5/bin:/usr/bin:/bin。 第二次包含~/bin:~/perl5/bin:~/bin:~/perl5/bin:/usr/bin:/bin。 第三次包含~/bin:~/perl5/bin:~/bin:~/perl5/bin:~/bin:~/perl5/bin:/usr/bin:/bin。 有没有一种简单的方法可以使其仅添加PATH中尚未添加的任何内容?
9 bash  shell  path  bashrc 


2
在Redhat上,“ kernel.suid_dumpable = 1”是什么意思?
我正在运行bash脚本来复制一些日志文件,然后在Red Hat盒子上重新启动服务。每次执行脚本时,都会在控制台上看到以下内容: [root@servername ~]# sh /bin/restart_nss.sh kernel.suid_dumpable = 1 Stopping Service: [ OK ] Starting Service: [ OK ] [root@servername ~]# 在这种情况下,“ kernel.suid_dumpable = 1”是什么意思? 谢谢,IVR Avenger
9 bash  shell  redhat 

2
mysqldump提示在shellscript中输入密码
我写了一个简单的shell脚本来转储特定的mysql数据库。问题是即使我提供了密码,它也会提示我输入密码。如果这很重要,则mysql db是5.0.27版。这是我正在使用的特定行。 $MYSQLDUMP -u backup -p$MyPass $DB > $DEST/$FILE 我尝试了几种变体,但无济于事。
9 mysql  shell 

6
Powershell与cygwin / unix-shell相比有什么优势
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我知道的明显区别是与某些MS产品(例如Exchange)接口的能力。但是对于不必管理此类产品的人来说,Powershell有何优势?根本不学习Powershell的原因是什么(假设我精通bash和cygwin)?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.