标签: bash

shell这个词是进程的同义词吗?

这篇文章:

Sourcing 将执行当前 shell 中的命令,执行将创建一个新的 shell 并在那里执行命令。

他描述每个 shell 都有自己的 PID。我看不出 shell 和 process 之间有什么区别,至少在他的上下文中如何使用 shell 这个词没有区别。

linux bash shell

2
推荐指数
1
解决办法
1078
查看次数

链接多个文件

在 中bash,假设我想链接目录中的一些但不是所有文件,例如,

ln -s /dir/file1 /dir/file2 ... /other/dir
Run Code Online (Sandbox Code Playgroud)

但是文件名的格式不遵循一些简单的规则,所以我们不能使用类似

ln -s /dir/file* /target/dir.
Run Code Online (Sandbox Code Playgroud)

无论如何不要重复/dir,例如:

/dir/{file1 file2 ...} = /dir/file1 /dir/file2 ...
Run Code Online (Sandbox Code Playgroud)

所以我们可以做这样的事情:

ln -s /dir/{file1 file2 ...} /target/dir
Run Code Online (Sandbox Code Playgroud)

linux bash shell command-line

2
推荐指数
1
解决办法
247
查看次数

在没有包管理器的情况下安装软件

我有一个运行 linux 的嵌入式系统。我需要安装一些软件,特别是uucp包含cu命令的包。这真的是我所需要的。

目前我所拥有的只是通过 COM 端口对系统的 root 访问。所以只有命令行。该系统可以访问互联网。

问题是我不是一个非常有经验的 linux 用户,我遇到了以下困难:

  • 我找不到任何我知道的包管理器(没有 apt-get,没有 yum,没有 rpm)
  • dpkg 命令不起作用(编辑 2:未安装 dpkg)
  • 我尝试*.tar.gz使用下载包wget,我已经解压并执行了./configure,但是当我运行时make,我得到bash: make: command not found. 所以我假设缺少 binutils 或其他重要的东西,我将无法从源代码安装它。

任何人都可以提出解决方法吗?我错过了什么?

编辑 1:输出compgen -c(根据 Matthew Williams 的要求)

 if
 then
 else
 elif
 fi
 case
 esac
 for
 select
 while
 until
 do
 done
 in
 function
 time
 {
 }
 !
 [[
 ]]
 .
 :
 [
 alias
 bind
 break
 builtin
 caller
 cd …
Run Code Online (Sandbox Code Playgroud)

linux modem bash embedded make

2
推荐指数
1
解决办法
5092
查看次数

如何让bash自动刷新程序位置的缓存?

我知道 bash 内部命令hash以及如何使用hash -dhash -r忘记记住的位置。有没有办法在bash“缓存未命中”时指示自动执行此操作,即当记住的位置消失时 ( no such file or directory)bash会清除记住的位置并重试?

linux bash

2
推荐指数
1
解决办法
666
查看次数

使用 Bash,如何删除外部驱动器文件夹树中的所有 desktop.ini?

我正在使用我的外置硬盘来存储我的音乐,现在我已经在我的 PC 上安装了 Linux。

我想擦除desktop.ini硬盘上一千个嵌套文件夹中的所有文件,如何仅使用 bash 完成此操作?

linux bash rm

2
推荐指数
1
解决办法
2281
查看次数

在单行 bash 命令中多次使用参数

我偶尔需要运行一个命令,例如:

mv "very-long-file-name.x" "very-long-file-name.y"
Run Code Online (Sandbox Code Playgroud)

我想在不重复两次很长的文件名的情况下实现这一点......

我知道如何通过将“非常长的文件名”一次传递给一个 bash 脚本,然后该脚本将使用 $1 来做到这一点......但是我怎么能在没有脚本的情况下做到这一点?

bash shell

2
推荐指数
1
解决办法
3373
查看次数

是否可以将这两个 ssh 命令合二为一?

我在 Mac 10.9.1 上使用 bash。现在,我执行这两个命令以最终到达我想要访问的服务器

ssh me@intermediate
Run Code Online (Sandbox Code Playgroud)

然后一旦登录,我就执行

ssh me@destination
Run Code Online (Sandbox Code Playgroud)

如果不通过中间服务器,就不可能从我的机器上运行“ssh me@destination”。是否有可能以某种方式将这两个 ssh 命令组合成一行,以便我登录到我的目的地?

ssh bash

2
推荐指数
1
解决办法
667
查看次数

在 Mac 中,如何在 shell 上发出文件结束 (EOF) 信号

在 Windows 中,我按 F6 功能键来引入表示文件结束的CTRL+Z字符。

c:\> copy con filename
Run Code Online (Sandbox Code Playgroud)

将命令行输入复制到给定的文件名。最后,在按下文本后,我将输入F6引入CTRL+ Z(EOF) 字符的键。

1) 将命令行输入复制到给定文件的等效命令是什么?

2) 上面命令中什么键引入了文件结尾字符?

windows keyboard bash command-line macos

2
推荐指数
1
解决办法
7094
查看次数

ssh 控制台和 bash 有什么关系?

这有点像奶奶的问题,但是,我真的想不通。

如下: 我通过 ssh 登录到远程机器。在那里(例如!)我尝试适当地设置 LD_LIBRARY_PATH。这通常是完成的,export但在我从 ssh 获得的控制台上,export导致"Command not found". 我输入然后bash现在我可以使用导出。

另一方面,我不需要进入 bash 终端来执行 sh-scripts 和 makefiles,其中包含例如export命令,但可以直接从我通过 ssh 输入时得到的控制台执行。

如果有人能用几句话来解释我,我会很高兴!或者我怎样才能知道更多?

ssh bash console

2
推荐指数
1
解决办法
216
查看次数

如何在变量或字符串上使用 grep?

我正在编写一个 bash 脚本,我需要检查文件名的末尾是否有数字(在一个句点之后),如果有,请获取它,但我不知道如何在变量或字符串上使用正则表达式。

我能够echo在终端中使用管道将字符串导入 grep,如下所示:

 echo "filename.txt.123" | egrep -o "\.[0-9]+$" | egrep -o "[0-9]+"
Run Code Online (Sandbox Code Playgroud)

但是我需要将它的输出分配给一个变量。我尝试这样做:

 revNumber= echo "filename.txt.123" | egrep -o "\.[0-9]+$" | egrep -o "[0-9]+"
Run Code Online (Sandbox Code Playgroud)

但这不起作用。我也尝试了很多其他的东西,但没有任何效果。

在我的 bash 脚本中,我想对变量而不是字符串使用 grep,但这里的概念是相同的。

如何在字符串或变量上使用 grep,然后将结果保存到另一个变量中?

linux bash grep

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×10

linux ×6

shell ×3

command-line ×2

ssh ×2

console ×1

embedded ×1

grep ×1

keyboard ×1

macos ×1

make ×1

modem ×1

rm ×1

windows ×1