我有以下行来产生一个随机数: 头-c 3 / dev / urandom | hexdump | sed -e's / [0 az] // g'| 头-c 1 这工作正常,但有时(很less)它返回一个新的行。 有谁知道这可能是为什么?
我有一个find / grep命令,用于search我的项目的代码库,因此: find folder1 folder2 folderetc -print | awk '{print "\""$0"\""}' | xargs grep -n "search-string" 经常刺激我的东西是缩小的JavaScript和CSS文件,其中的一切都包装成一个单一的行(由于可能被误导的认为,删除换行符会使下载JavaScript文件显着更快)。 有了这些压缩或缩小的文件,总是有一个非压缩版本,我想在我的结果中看到。 我从来不想看到压缩版本,因为它只会导致无法读取的垃圾的屏幕和屏幕。 没有系统的方法,我可以告诉grep避免缩小或打包文件,因为没有命名约定。 但是我想到,我可以过滤出长度超过400个字符的结果。 有没有办法,我可以用grep(或其他?)做到这一点
我有一个简单的Python脚本,从标准input读取(单行),做一些处理(stringparsing,没有涉及IO),并输出到标准输出 eg python parse.py < in.txt > out.txt 我有一个200GB左右的in.txt ,并行加速(我有8个CPU核心)。 cat in.txt | parallel -j8 -N1 –pipe python parse.py 我观察到CPU是他们没有充分利用,例如 %Cpu0 : 9.1 us, 22.7 sy, 0.0 ni, 68.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st %Cpu1 : 27.3 us, 13.6 sy, 0.0 ni, 59.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 […]
从来没有碰过Solaris有没有一个简单的命令,看看是否安装了Bash? 可能是一个愚蠢的问题,感谢您的帮助
我想在Solaris(Solaris 10)上以Kit.tar的forms创buildtar文件 并在Linux机器上解压Kit.tar(linux red-hat 3/4/5) 我们可以用Linux机器上的那个untar进程来安全吗? , 我想确保从Solaris中提取的所有文件(二进制文件和文件)(如tar cvf Kit.tar * ) 将完全在Linux机器上(如tar xvf Kit.tar ) 摘要从MAN页面 在Linux上 tar <operation> [options] Operations: [-]A –catenate –concatenate [-]c –create [-]d –diff –compare [-]r –append [-]t –list [-]u –update [-]x –extract –get –delete 在Soalris tar c[BDeEFhilnopPqTvw@[0-7]][bfk][X…] [blocksize] [tarfile] [size] [exclude-file]… {file | -I include-file | -C directory file}…
我需要使用shell脚本来确定设备的IPv4广播地址(如果有的话)。 如果有几个,请select一个(例如首先按/ sbin / ip命令)。 我有一个解决scheme,但我不喜欢它,因为它作出/ sbin / ip的输出格式的假设,我不知道如何稳定输出格式跨系统。 DEV=eth0 BROADCAST=`ip address show $DEV | grep 'inet .* brd ' | head -1 | sed -e 's/^.* brd \([0-9\.]*\) .*$/\1/'` echo $BROADCAST 在/ proc /或/ sys /中没有东西可以简单地使用猫吗? 为什么不? 我需要该解决scheme可靠地工作,至less在整个Debian / Ubuntu Linux系列中。 编辑:这不是一个关于sed / awk / grep魔术的问题。 问题是: 我可以期望跨越架构和Linux风格的ip ( ifconfig的事)具有相同的输出格式,这样我可以可靠地parsing,例如从它的接口的IPv4广播地址? 如果没有:是否有另一种方式以更可预测的方式输出接口的IPv4广播地址? 为什么没有/ proc / […]
我一直在努力处理这个问题。 我有一个简单的crawler.py文件,它包含一个只能在python3下运行的代码,在python3.3中是精确的 现在,我的默认CentOs7机器自带python2.7所以,我被迫切换使用python3来运行我的脚本,例如: scl enable python33 bash 例。 [root@bt py]# python -V Python 2.7.5 [root@bt py]# scl enable python33 bash [root@bt py]# python -V Python 3.3.2 正如你所看到的,它改变了版本后,我可以运行简单的运行crawler.py没有像python crawler.py一样简单的问题。 但是,我需要这个python文件通过cron运行,在一周的特定时间。 问题是,一旦我从我的VPS注销,python2.7成为默认,如果cron触发它,它将不会运行。 为此,我想我应该使用python3二进制代替python ..所以,我尝试了以下 /opt/rh/python33/root/usr/bin/python3.3 crawler.py 但是,似乎二进制不出现unles你运行scl enable python33 bash 你可以自己看到这个 [root@bt ~]# whereis python python: /usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz [root@bt ~]# scl enable […]
今天进入一些奇怪的行为。 想知道如果有人在这里可以告诉我什么是不同的行为。 环境是一个RHEL 6.7服务器。 我运行以下命令: yum list installed *mysql* 如果我的cwd是/或许多其他地方,我会得到以下输出: Installed Packages MySQL-client-advanced.x86_64 5.6.27-1.el6 @/MySQL-client-advanced-5.6.27-1.el6.x86_64 MySQL-server-advanced.x86_64 5.6.27-1.el6 @/MySQL-server-advanced-5.6.27-1.el6.x86_64 MySQL-shared-advanced.x86_64 5.6.27-1.el6 @/MySQL-shared-advanced-5.6.27-1.el6.x86_64 MySQL-shared-compat-advanced.x86_64 5.6.27-1.el6 @/MySQL-shared-compat-advanced-5.6.27-1.el6.x86_64 在其他几个文件夹(包括/ opt在这个服务器上),我运行相同的命令,并得到这个输出: Error: No matching Packages to list 现在我知道我通常需要在这个命令中逃避通配符。 如果我运行它: yum list installed \*mysql\* 那么我在这两个地方得到正确的输出。 我收集这是因为如何bash globs通配符。 现在我真正想知道的是为什么它把它放在一个文件夹中,而不是在另一个文件夹中。 我以root身份运行,printenv显示相同的输出(PWD除外),从字面上看,两次运行命令之间的唯一变化是cd /opt 任何人都可以告诉我为什么发生这种事情,或者看看有什么事情要看,为什么它可能会有所不同? TIA
我有一个跟踪AWS CloudWatch日志的进程。 除了CloudWatch组和容器ID预先占用每一行之外,它工作得很好。 例如: core-api 04a7ce3daf83aa018a92eb4a613c87354695dc8219f213697f7f786b81d4d [PROD] – INFO: GET 200 – 5ms core-api 04a7ce3daf83aa018a92eb4a613c87354695dc8219f213697f7f786b81d4d [PROD] – INFO: POST 200 – 7ms 有没有一种方法来pipe我的日志命令我用一些types的filter,只显示行后信息[PROD] – ?
这似乎是一个愚蠢的问题,但我似乎无法将nginx -v输出存储到一个variables,甚至写在bash中的文件。 php –version和mysql –version似乎工作正常,但Nginx不会保存。 有没有办法做到这一点。 我在尝试: NGINX_VERSION=$(nginx -v) nginx -v > /home/user/nginxversion.txt PHP以相同的方式正常工作,但nginx不会保存。 PHP_VERSION=$(php –version) php -v > /home/user/phpversion.txt