Tag: shell

文件中最长的行

我正在寻找一种简单的方法来查找文件中最长行的长度。 理想情况下,这将是一个简单的bash shell命令而不是脚本。

从Linux命令行生成一个sha256

我知道string“foobar”使用http://hash.online-convert.com/sha256-generator生成SHA 256哈希c3ab8ff13720e8ad9047dd39466b3c8974e592c2fa383d4a3960714caef0c4f2 不过命令行shell: hendry@x201 ~$ echo foobar | sha256sum aec070645fe53ee3b3763059376134f058cc337247c978add178b6ccdfb0019f – 生成不同的哈希。 我错过了什么?

如何创build不存在的子目录recursion地使用Bash?

我正在创build一个快速备份脚本,将一些数据库转储到一个很好/整洁的目录结构,我意识到我需要testing,以确保目录存在之前,我创build它们。 代码我有工作,但似乎有一个更好的方法来做到这一点。 有什么build议么? [ -d "$BACKUP_DIR" ] || mkdir "$BACKUP_DIR" [ -d "$BACKUP_DIR/$client" ] || mkdir "$BACKUP_DIR/$client" [ -d "$BACKUP_DIR/$client/$year" ] || mkdir "$BACKUP_DIR/$client/$year" [ -d "$BACKUP_DIR/$client/$year/$month" ] || mkdir "$BACKUP_DIR/$client/$year/$month" [ -d "$BACKUP_DIR/$client/$year/$month/$day" ] || mkdir "$BACKUP_DIR/$client/$year/$month/$day"

Chmodrecursion地

我有一个存档,由其他人存档,我想在下载它之后自动更改提取的文件内的文件系统的分支以获得读取权限。 (我不能改变如何创build存档)。 我已经看了这个线程: chmod:如何recursion添加执行权限只有已经有执行权限的文件到其他一些,但没有喜悦。 这些目录最初有多个,但都是错误的标志,它们可能会显示为: drwx—— d—rx— drwxrwxr-x dr–r-xr– 这些只是我迄今发现的less数,但可能会更多。 尝试查看不具有x权限的目录时find错误,因此不会将其传递给chmod 。 到目前为止,我一直在做的是手动更改父目录的权限,然后进入子目录并为他们执行相同的操作。 但是这是很多手工劳动。 有没有办法自动做到这一点? 即我现在如何做: 做: $ chmod -R +x $ chmod -R +r 直到我没有任何错误,那么 $ find -type f -exec chmod -x {} + 但是一定有更好的办法。

如何判断一个string是不是在bash shell脚本中定义的?

如果我想检查空string,我会做的 [ -z $mystr ] 但是如果我想检查variables是否被定义了呢? 或者是没有区分bash脚本?

在使用sed第一次匹配后插入行

出于某种原因,我似乎无法find一个简单的答案,我现在正处于一个紧张的时刻。 如何在使用sed命令匹配特定string的第一行之后插入文本的select行。 我有 … CLIENTSCRIPT="foo" CLIENTFILE="bar" 我想在CLIENTSCRIPT=行之后插入一行,导致… CLIENTSCRIPT="foo" CLIENTSCRIPT2="hello" CLIENTFILE="bar"

在PowerShell中用于脚本testing的等效回声

我想在PowerShell脚本中输出variables和值,方法是在整个脚本中设置标志并查看数据。 我将如何做到这一点? 例如,什么是PowerShell相当于下面的PHP代码? echo "filesizecounter: " . $filesizecounter

你如何正常化Bash中的文件path?

我想将/foo/bar/..为/foo 有没有这样做的bash命令? 编辑:在我的实际情况下,目录确实存在。

在Bash中是否有TRY CATCH命令?

我正在编写一个Shell脚本,需要检查是否安装了terminal应用程序。 我想用一个TRY / CATCH命令来做这个,除非有一个更好的方法。

在Unix shell中添加一列数字

给出files.txt中的文件列表,我可以得到这样的大小列表: cat files.txt | xargs ls -l | cut -c 23-30 这产生了这样的事情: 151552 319488 1536000 225280 我怎样才能得到所有这些数字的总和 ?