标签: bash

如何从命令行获取Linux中的CPU /核心数?

我有这个脚本,但我不知道如何获得打印输出中的最后一个元素:

cat /proc/cpuinfo | awk '/^processor/{print $3}'
Run Code Online (Sandbox Code Playgroud)

最后一个元素应该是CPU的数量减去1.

linux bash cpu

510
推荐指数
15
解决办法
59万
查看次数

在管道上使用"tee"时如何将stderr写入文件?

我知道如何使用tee写输出(STDOUT中)aaa.shbbb.out,同时还在终端显示它:

./aaa.sh | tee bbb.out
Run Code Online (Sandbox Code Playgroud)

我现在如何写STDERR一个名为的文件ccc.out,同时还显示它?

unix linux bash

507
推荐指数
10
解决办法
24万
查看次数

Bash中单引号和双引号之间的区别

在Bash中,单引号('')和双引号("")之间有什么区别?

syntax bash shell quotes

501
推荐指数
6
解决办法
17万
查看次数

如何将当前工作目录设置为脚本目录?

我正在写一个bash脚本.我需要当前的工作目录始终是脚本所在的目录.

默认行为是脚本中的当前工作目录是我运行它的shell的目录,但我不想要这种行为.

bash scripting path

500
推荐指数
7
解决办法
35万
查看次数

打印一个文件,跳过Bash中的第一行X行

我有一个很长的文件,我想打印但跳过第一个1e6行例如.我查看了猫手册页,但我没有看到任何选项.我正在寻找一个命令来做这个或一个简单的bash程序.

linux printing bash skip

498
推荐指数
12
解决办法
36万
查看次数

如何在Unix控制台或Mac终端上运行shell脚本?

我知道了,忘了它并重新学习它.是时候把它写下来了.

unix linux macos bash shell

496
推荐指数
5
解决办法
84万
查看次数

Bash变量赋值中未找到命令错误

我有一个名为test.sh的脚本:

#!/bin/bash
STR = "Hello World"
echo $STR
Run Code Online (Sandbox Code Playgroud)

我跑的时候sh test.sh得到这个:

test.sh: line 2: STR: command not found
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?我在网上看一下非常基础/初学者的bash脚本教程,这就是他们说声明变量的方式......所以我不确定我做错了什么.

我在Ubuntu Server 9.10上.是的,bash位于/bin/bash.

syntax bash shell sh variable-assignment

493
推荐指数
5
解决办法
32万
查看次数

Colorized grep - 使用突出显示的匹配查看整个文件

我发现它grep--color=always旗帜非常有用.但是,grep只打印带匹配的行(除非您要求上下文行).鉴于它打印的每一行都有一个匹配,突出显示不会增加尽可能多的能力.

我真的很喜欢cat一个文件,看到整个文件突出显示模式匹配.

有什么方法我可以告诉grep打印每一行被读取而不管是否有匹配?我知道我可以编写一个脚本来在文件的每一行上运行grep,但我很好奇这是否可以用标准grep.

bash shell grep colors

486
推荐指数
12
解决办法
19万
查看次数

检查环境变量是否在Unix shell脚本中设置的简洁方法是什么?

我有一些Unix shell脚本,我需要在开始做之前检查某些环境变量是否已设置,所以我做了这样的事情:

if [ -z "$STATE" ]; then
    echo "Need to set STATE"
    exit 1
fi  

if [ -z "$DEST" ]; then
    echo "Need to set DEST"
    exit 1
fi
Run Code Online (Sandbox Code Playgroud)

这是很多打字.是否有更优雅的习惯用于检查是否设置了一组环境变量?

编辑:我应该提到这些变量没有有意义的默认值 - 如果有任何未设置,脚本应该出错.

unix bash shell

484
推荐指数
9
解决办法
37万
查看次数

如何将大文本文件拆分为具有相同行数的较小文件?

我有一个大的(按线数)纯文本文件,我想分成较小的文件,也按行数.因此,如果我的文件有大约2M行,我想将它分成10个包含200k行的文件,或者包含20k行的100个文件(加上一个包含剩余部分的文件;均匀可分的无关紧要).

我可以在Python中相当容易地做到这一点,但我想知道是否有任何一种使用bash和unix utils的忍者方式(而不是手动循环和计数/分区行).

unix bash file

468
推荐指数
11
解决办法
45万
查看次数

标签 统计

bash ×10

shell ×5

linux ×4

unix ×4

syntax ×2

colors ×1

cpu ×1

file ×1

grep ×1

macos ×1

path ×1

printing ×1

quotes ×1

scripting ×1

sh ×1

skip ×1

variable-assignment ×1