登录后我需要运行以下命令(带真实参数):
ssh -f user@example.com -L 54321:example.com:54321 -N
Run Code Online (Sandbox Code Playgroud)
我只需要我的用户,而不是机器上的所有用户。此外,无论我是通过 GUI 登录还是通过 SSH 登录到普通 shell 终端,我都需要它来运行。我什至想知道如何在没有安装 GUI 的机器上执行此操作。
按照说明,我会将上面的行放在哪里运行?
我已经设置了一个 cron 工作:
20 * * * * /usr/bin/sh /home/lucky/myfile.sh
Run Code Online (Sandbox Code Playgroud)
主要问题是在预定时间出现错误:“mail has sent to /var/spool/mail/lucky”。
myfile.sh 的内容是:
mkdir jh
cd jh
Run Code Online (Sandbox Code Playgroud) 当计算机“醒来”(从睡眠中)时,有没有办法运行脚本?我知道它可以在启动时完成,显然,但在这种情况下的问题是我的笔记本电脑的背光似乎每次从睡眠中醒来时都会重置,我理想情况下希望有一个脚本来处理它降低到合理的水平,而不必每次都手动输入。
我有一个包含大量图像的目录,但它们的方向错误。我想旋转图像以校正方向(主要是 ±90 o)。使用图像(shotwell 照片)查看器,我可以通过单击旋转按钮单独旋转它们,但这太乏味了。
我看了看man shotwell,并shotwell --help-all但没有什么解释如何从命令行调用旋转命令。
有什么方法可以从终端调用shotwell(或任何其他查看器)的旋转命令?或者任何其他旋转图像的方法也是受欢迎的。
我想要使用 bash 脚本的快速示例:
#!/bin/bash
echo "Insert the price you want to calculate:"
read float
echo "This is the price without taxes:"
echo "scale=2; $float/1.18" |bc -l
read -p "Press any key to continue..."
bash scriptname.sh
Run Code Online (Sandbox Code Playgroud)
假设价格是:48.86 答案将是:41.406779661(实际上是 41.40 因为我正在使用scale=2;)
我的问题是: 我如何舍入第二个小数以这种方式显示答案?:41.41
I want to see if a string is inside a portion of another string.
e.g.:
'ab' in 'abc' -> true
'ab' in 'bcd' -> false
Run Code Online (Sandbox Code Playgroud)
How can I do this in a conditional of a bash script?
我知道两个 bash 登录脚本之间的区别:
.bashrc 仅由“非登录”shell 运行。
.bash_profile(or .bash_loginor .profile) 由“登录”shell 执行。
有没有人有一些很好的例子来说明哪些东西更适合仅登录执行,这样我只会将它们放入.bash_profile,但它们实际上没有意义.bashrc?
(我知道我们大多数源.bashrc出.bash_profile,所以似乎并没有在相反的问题多一点...)
我有一个脚本,可以将多个子文件夹和存档中的所有文件搜索到 tar。我的脚本是
for FILE in `find . -type f -name '*.*'`
do
if [[ ! -f archive.tar ]]; then
tar -cpf archive.tar $FILE
else
tar -upf archive.tar $FILE
fi
done
Run Code Online (Sandbox Code Playgroud)
find 命令给了我以下输出
find . -type f -iname '*.*'
./F1/F1-2013-03-19 160413.csv
./F1/F1-2013-03-19 164411.csv
./F1-FAILED/F2/F1-2013-03-19 154412.csv
./F1-FAILED/F3/F1-2011-10-02 212910.csv
./F1-ARCHIVE/F1-2012-06-30 004408.csv
./F1-ARCHIVE/F1-2012-05-08 190408.csv
Run Code Online (Sandbox Code Playgroud)
但是FILE变量只存储路径的第一部分./F1/F1-2013-03-19,然后是下一部分160413.csv。
我尝试使用readwhile 循环,
while read `find . -type f -iname '*.*'`; do ls $REPLY; done
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误
bash: read: `./F1/F1-2013-03-19': not a valid …Run Code Online (Sandbox Code Playgroud)