Tag: bash

如何在一行中在bash中运行多个后台命令?

我通常运行多个这样的命令: sleep 2 && sleep 3 要么 sleep 2 ; sleep 3 但是如果我想在一个命令行命令的后台运行它们呢? sleep 2 & && sleep 3 & 不起作用。 而且也不能replace&& ; 有没有办法做到这一点?

在bash脚本函数中使用curl POST来定义variables

当我回应我得到这个,当我进入terminal时运行 curl -i \ -H "Accept: application/json" \ -H "Content-Type:application/json" \ -X POST –data '{"account":{"email":"akdgdtk@test.com","screenName":"akdgdtk","type":"NIKE","passwordSettings":{"password":"Starwars1","passwordConfirm":"Starwars1"}},"firstName":"Test","lastName":"User","middleName":"ObiWan","locale":"en_US","registrationSiteId":"520","receiveEmail":"false","dateOfBirth":"1984-12-25","mobileNumber":"9175555555","gender":"male","fuelActivationDate":"2010-10-22","postalCode":"10022","country":"US","city":"Beverton","state":"OR","bio":"This is a test user","jpFirstNameKana":"unsure","jpLastNameKana":"ofthis","height":"80","weight":"175","distanceUnit":"MILES","weightUnit":"POUNDS","heightUnit":"FT/INCHES"}' https://xxx:xxxxx@xxxx-www.xxxxx.com/xxxxx/xxxx/xxxx 但是当在bash脚本文件中运行时,我得到这个错误 curl: (6) Could not resolve host: application; nodename nor servname provided, or not known curl: (6) Could not resolve host: is; nodename nor servname provided, or not known curl: (6) Could not resolve host: […]

validation参数到一个Bash脚本

我想出了一个基本的帮助,以便在不需要的时候自动删除大量文件夹。 #!/bin/bash rm -rf ~/myfolder1/$1/anotherfolder rm -rf ~/myfolder2/$1/yetanotherfolder rm -rf ~/myfolder3/$1/thisisafolder 这是这样引起的: ./myscript.sh <{id-number}> 问题是,如果你忘记inputid-number (就像我那样) ,那么它可能会删除很多你真的不想删除的东西。 有没有一种方法可以将任何forms的validation添加到命令行参数? 在我的情况下,这将是很好的检查,a)有一个参数,b)它的数字,和c)该文件夹存在; 在继续脚本之前。

获取“sed错误 – 非法字节序列”(在bash中)

做一些stream编辑来改变讨厌的Parallels图标。 它发展不佳,embedded到应用程序本身,而不是一个图像文件。 所以我find了这个sed命令有一些很好的反馈: sudo sed -i.bak s/Parallels_Desktop_Overlay_128/Parallels_Desktop_Overlay_000/g /Applications/Parallels\ Desktop.app/Contents/MacOS/prl_client_app 它返回sed: RE error: illegal byte sequence 谁能解释这是什么意思? 命令的哪一部分是问题?

便携的方式来获取文件大小(以字节为单位)在shell中?

在Linux上,我使用stat –format="%s" FILE ,但是我有权访问Solaris并没有stat命令。 那我应该用什么? 我正在编写Bash脚本,并且不能真正在系统上安装任何新软件。 我认为已经在使用: perl -e '@x=stat(shift);print $x[7]' FILE 甚至: ls -nl FILE | awk '{print $5}' 但是,这些看起来都不合理 – 运行Perl只是为了获得文件大小? 或者运行2个命令来做同样的事情?

从bash中得到wc的整数

有没有办法得到wc在bash中返回的整数? 基本上我想在文件名后面写行号和字数。 output: filename linecount wordcount这是我到目前为止: files=`ls` for f in $files; do if [ ! -d $f ] #only print out information about files !directories then # some way of getting the wc integers into shell variables and then printing them echo "$f $lines $ words" fi done

如何将所有文件重命名为小写?

我有例如TREE.wav,ONE.WAV。 我想把它重命名为tree.wav,one.wav。 如何将所有文件重命名为小写?

如何将多个文件的内容附加到一个文件中

我想将五个文件的内容按原样复制到一个文件中。 我试图使用cp为每个文件。 但是,这会覆盖从前一个文件复制的内容。 我也试过了 paste -d "\n" 1.txt 0.txt 并没有工作。 我想我的脚本在每个文本文件的末尾添加换行符。 例如。 文件1.txt,2.txt,3.txt。 把内容1,2,3放在0.txt中 我该怎么做 ?

如何反向我来回search?

我经常使用reverse-i-search ,这很酷。 有时候,当按Ctrl+r多次时,我会传递我正在寻找的命令。 由于Ctrl+r在历史中向后search,从最新到最旧,我必须: 取消, 再次search 停止在命令,没有通过它。 在reverse-i-search提示中,是否有可能向前search,即从我的位置到最新的位置。 我天真地尝试Ctrl+shift+r ,没有运气。 我听说过Ctrl+g但这不是我期待的。 任何人有一个想法?

如何删除shell中最后10条命令的历史logging?

命令如下 511 clear 512 history 513 history -d 505 514 history 515 history -d 507 510 513 516 history 517 history -d 509 518 history 519 history -d 511 520 history 我可以通过history -d 511删除单个history -d 511 ,但是如何删除最后10个命令以及在10个命令历史logging中使用shell中的单个命令? 我们可以编写一个bash脚本并执行删除历史吗?