我有这样的说法: A=$(echo "echo a") && bash -c "awk -v var=\"$A\" 'BEGIN {printf \"%20s\", var}'" 哪些产出: echo az 而且我不能做这个单行本的工作: A=$(echo "echo a") && bash -c "paste <(awk -v var="$A" 'BEGIN {printf \"%-200s\n\", var}') <(echo "BBBB") –delimiters ''" a 'BEGIN {printf "%-200s\n", var}') <(echo BBBB) –delimiters '': -c: line 0: unexpected EOF while looking for matching `)' […]
我有一个完美的Apache服务器,直到我连接到VPN,然后所有连接到服务器超时。 现在到我的理解问题是tun0成为默认的输出接口,因此Apache将混淆如何发送数据包,所以我试图解决它使用控制组通过标记数据包出去从Apache和redirect他们通过eth0像在这个真棒苏答复 ,但它不工作后,我的Ubuntu操作系统升级到16.04版本。 这是我的networking图: 这里是我的networking细节: me@mypc:~$ ip route list 0.0.0.0/1 via 10.132.1.5 dev tun0 default via 192.168.0.1 dev eth0 proto static metric 100 10.132.1.1 via 10.132.1.5 dev tun0 10.132.1.5 dev tun0 proto kernel scope link src 10.132.1.6 123.4.5.6 via 192.168.0.1 dev eth0 234.5.6.7 via 192.168.0.1 dev eth0 128.0.0.0/1 via 10.132.1.5 dev tun0 169.254.0.0/16 dev eth0 […]
目前我正在使用以下简单的线路脚本将服务器目录备份到远程FTP位置 # Take backup to remote location ncftpput -z -R -uusername -ppassword ftp.example.org /destination/directory /source/directory 现在,我只需要从超过7天的远程FTP删除备份。 在服务器内的正常目录位置,我简单地用下面的脚本来完成 # Delete backups older than 7 days find /backup -name '*' -type d -mtime +6 -exec rm -rfv "{}" \; 但是,运行相同的FTP不工作,有什么办法可以删除超过7天的FTP远程位置数据? 可能是通过lftp或任何其他命令
我正在编写一个脚本来curl网页和grep / sed / sort / tail,然后使用nagios退出代码进行监视。 我的bash脚本如下: queue= curl -s 'site | grep -ohE 'READY":[0-9]+' |\ sed 's/READY"://' | sort -n | tail -1 if [[ $queue =~ [0-1] ]]; then echo "OK – $queue current jobs." exit 0 fi if [[ $queue =~ [2-3] ]]; then echo "WARNING – $queue current jobs in […]
自从我在这里发布一个问题已经有一段时间了。 需要一些assistancew让我的sed工作。 我已经尝试了各种forms的sed选项,但似乎无法得到这个工作。 我有一个文件,其中有“192”*,并需要任何types的“192”类似的IP地址,所有删除,但我需要从字面上保持一切。 东西看起来像: + : root : 192.,local,10. + : root : local,192. + : root : local,192.,10. + : root : local,10.33.45.34,192.168.22.100 + : root : local,192.168.22.100,10.33.45.34 + : root : local,192.168 + : root : local,192.168,10. 项目的我试过了: sed -e 's/,192.*$//g' -e 's/,192.*,//g' -e 's/192.,//g' sed -e 's/,192.*$//' -e 's/,192.*,//' -e 's/192.,//' […]
当我做下面那么qcow2文件是小于200KB。 # qemu-img create -f qcow2 /var/lib/libvirt/images/urb-dat0.qcow2 10G # du -hsc /var/lib/libvirt/images/urb-dat0.qcow2 196K /var/lib/libvirt/images/urb-dat0.qcow2 如果我将它附加到KVM guest fdisk -l和fdisk -l Disk /dev/vdb: 0 MB, 197120 bytes, 385 sectors 题 如何使一个10GB的qcow2文件不是精简configuration?
这里有一些情况我是在foo是ssh服务器的密码lesslogin设置。 $ ssh foo $ bash –login -c 'exec $0 "$@"' ls -lrt 它按预期工作。 ssh foo bash –login -c ls -lrt 这不像预期的那样工作。 只有ls正在工作忽略-lrt参数。 而我的要求是运行第一个例子像SSH ssh foo bash –login -c 'exec $0 "$@"' ls -lrt 我知道我有第二个例子本身的问题。 但是,我只是想尽一切办法,find问题所在。 第三个例子没有显示任何错误/输出。 我如何着手实现第三个例子?
我正在尝试使用我的.bashrc启动GNU屏幕。 我快到了: if [ -z "$STY" ]; then exec screen -dR else exec gnome-terminal fi 这是错误的! 第一个案例工作,当我打开一个terminal时, screen启动。 但是第二部分失败了。 我想打开一个普通的terminal,如果我已经有一个打开。 但是,这只是打开了无数的terminal…
给定Windows共享\\服务器\共享包含空间\ direcory \可用的一组XML文件,我需要一个bash命令从该共享下载一个特定的文件。 wget和curl都不支持任何smb:// URI,我想避免mount命令。 解决scheme?
我想知道如果ubuntu(最好是9.04)有一些东西,可以确定用户是否第一次login到他的电脑,多一次在同一天。 我需要这个的原因是创build一个bash脚本,如果他在那天第一次login,它将启动一个应用程序(即Firefox)。 但是,如果他在同一天再次login,它将不会再次启动应用程序。 有谁知道Ubuntu是否在命令行中拥有这样的function?