Questions tagged «command-line»

有关使用命令行界面(CLI)的问题。

1
别名:.bash_rc,.bash_aliases和/ usr / local / bin之间的区别
在玩Terminal时,我注意到有很多创建永久别名的方法。 我是Linux新手,据我所知,我正在做: sudo ln -s /path/to/executable /usr/local/bin/desired_alias 添加desired_alias = '/path/to/executable'到~/.bashrc 取消注释这些行~/.bashrc: if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi 并把desired_alias = '/path/to/executable'成~/.bash_aliases 都具有相同的效果。 第一种方法和第二种方法有什么区别?

6
计算文件中每一列的总和
在具有以空格''分隔的不同列数的文件中,如何计算列之和。一个例子将表明需要: File A: 1 2 2 3 4 5 6 1 1 1 5 那么输出将是: 对于列1(1 + 2 + 4 + 1)= 8 第2列为11 第3列是7 第4列是5

1
Firefox每次关闭时如何执行终端命令
我需要执行以下操作: rm -rf ~/.wine-pipelight/*; rm -rf ~/.wine-pipelight/./.*; cp -a ~/viewright_backup/. ~/.wine-pipelight 每次Firefox窗口关闭时。但不一定所有窗口都关闭时,而是在所有关闭的窗口上时。例如,如果我有一个Firefox窗口和一个Firefox弹出窗口。如果关闭至少一个窗口,则要执行此命令。这可能吗?谢谢!

4
如何在Bash中将命令的输出作为命令导入?
系统 Linux hosek 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux 问题 我需要在bash脚本中以命令的形式获取输出以存储变量。 例 sed -n '/# Main configuration./,/# Websites./p' webcheck-$category.cfg | sed '1,1d' | sed '$ d' 此命令返回以下行: email_sender='some@email.com' email_recipients='another@email.com' 如何在脚本中将这些输出/行作为命令读取/运行?是否将此输出存储到文件中,然后source仅通过命令读取它? 我| source在命令末尾尝试过,但是它仅从文件中读取。 我echo在一开始就尝试过,但是没有效果。 谢谢。

2
如何从bash命令获取子字符串
给定以下从命令获得的子字符串df /dev/sdb1 | tail -n 1: /dev/sdb1 1952971772 1441131032 511840740 74% /media/kaiman/ShareData 我想从该字符串中提取1952971772并74%在bash脚本中使用它。 我知道我可以使用一些剪切命令之类的东西,但是例如,如果尺寸改变,它将不再起作用。 我也考虑过使用正则表达式之类的东西,但是我想推荐最推荐的方法。 提前致谢!

1
如何控制bash自动完成显示分页补全列表的时间?
在我以前的linux安装中,bash自动补全一直没有问题。如果我想对文件做任何事情,请给文件名添加一个前缀,然后按制表符列出所有与该前缀匹配的内容,但它还会使用命令和前缀重复其下的提示,以便我可以立即继续输入。 现在,我已将系统更新为kubuntu 18.04,自动完成功能不再那么流畅。甚至更陌生的是,其行为是不可预测的,就像取决于konsole一样。如果命令是less,则它始终可以正常工作(如上所述),但是如果命令是cp或mv,则行为会有所不同。有时它可以正常工作,但通常会显示一个包含更多内容的匹配文件列表(隐藏我的提示),并且我必须键入q以退出更多文件并能够继续。一件小事,但很烦,因为它需要额外的输入。 我看到了这些.bashrc电话,/usr/share/bash-completion/bash_completion 但对此没有做任何更改。 问题:什么原因导致这种不可预测的行为?我该如何解决?

4
SSH如何处理if条件?
我有一条if声明来计算文件并删除除最新的三个文件以外的所有文件。但是我想远程运行此命令。我怎样才能结合ssh与if条件? 我尝试了这个但没有成功。 #!/bin/bash ssh -t test@192.168.94.139 "cd /var/www/test.com/backup ; if [ $(ls | wc -l) -lt 3 ] then echo "Less" else [ $(ls -t *.tgz|awk 'NR >3'|xargs rm -f) ] echo "deleted" fi" 我得到的错误: ls:无法访问* .tgz:没有此类文件或目录

1
Shell命令或脚本解压缩,添加文本文件并重新压缩
我已经创建了200个zip文件用于工作,但是我意识到我忘记将.txt添加到每个文件中。不用花费数小时来重做这项工作,我将不胜感激。 有没有人知道使用bash解压缩,添加.txt文件并重新压缩所有200个文件的方法?.txt文件的名称不会仅更改.zip文件。 谢谢。

6
有没有一种简单的方法可以识别是否扫描了PDF?
我有成千上万的文档,其中一些已扫描。因此,我需要一个脚本来测试属于目录的所有PDF文件。有没有简单的方法可以做到这一点? 大多数PDF是报告。因此,他们有很多文字。 它们是非常不同的,但是由于不稳定的OCR处理与扫描相结合,因此如下所述的扫描对象可以找到一些文本。 未扫描 已扫描1 已扫描2 在下面的评论中,由于Sudodus提出的提案似乎非常有趣。查看已扫描的PDF与未扫描的PDF之间的区别: 已扫描: grep --color -a 'Image' AR-G1002.pdf <</BitsPerComponent 8/ColorSpace/DeviceRGB/Filter[/DCTDecode]/Height 2197/Length 340615/Name/Obj13/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 40452/Name/Obj18/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 41680/Name/Obj23/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 41432/Name/Obj28/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 1698/K -1>>/Filter/CCITTFaxDecode/Height 2197/Length 59084/Name/Obj33/Subtype/Image/Type/XObject/Width 1698>>stream <</BitsPerComponent 8/ColorSpace/DeviceRGB/Filter[/DCTDecode]/Height 2197/Length 472681/Name/Obj38/Subtype/Image/Type/XObject/Width …

2
通过命令行执行Steam Proton App时出错
我想启动一个通过蒸汽安装但不使用蒸汽的质子应用程序。 关键是我可以创建自己的命令行启动器并传递参数等... 因为我是这个新手,所以我不知道该用哪种号角抓住公牛。 我将能够通过Steam的lib进行操作,还是会被迫安装自己的独立版本的质子? 这是我的系统收集的系统信息: Computer Information: Manufacturer: Unknown Model: Unknown Form Factor: Desktop No Touch Input Detected Processor Information: CPU Vendor: GenuineIntel CPU Brand: Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz CPU Family: 0x6 CPU Model: 0x2d CPU Stepping: 0x7 CPU Type: 0x0 Speed: 3800 Mhz 12 logical processors 6 …




6
从txt文件中使用包含“ /”字符的名称创建目录
我有一个.txt文件,其中包含这样的文本 A1/B1/C1 A2/B2/C2 A3/B3/C3 我想要一个脚本,该脚本读取每一行的.txt文件,然后根据第一个单词(A1,A2,A3)创建目录 我创建了这样的脚本: file="test.txt" while IFS='' read -r line do name="line" mkdir -p $line done <"$file" 在运行它时,它将创建目录A1,然后还将创建子目录B1和C1。另一行(A2 *和A3 *)也是如此 我应该怎么做才能仅创建A1,A2,A3目录? 我不想用像A1 / B1 / C1这样的名字加上'/'字符。我只想在“ /”字符前加上单词,并使其成为目录名。只是“ A1”,“ A2”,“ A3”。

2
将grep输出限制为短行
我经常使用grep查找具有特定条目的文件,如下所示: grep -R 'MyClassName' 好消息是它返回文件及其内容,并将找到的字符串标记为红色。不好的是,我还有很大的文件,整个文本都写在一个大的单行中。现在,在这些大文件中查找文本时,grep输出过多。有没有一种方法可以将输出限制为例如左右两个单词?还是将输出限制为左右30个字母?

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.