Articles of 命令行

什么是最安全的方式来清空* nix中的目录?

我很害怕,总有一天我会在我目前使用的命令中放置一个空间或者错过一些东西: rm -rf ./* 有清空当前目录内容的安全方法吗?

如果一个命令行程序不确定stdout的编码,它应该输出什么编码?

我有一个用Python编写的命令行程序,当我通过命令行上的另一个程序pipe理它时, sys.stdout.encoding是None 。 这是有道理的,我想 – 输出可能是另一个程序,或者一个文件,你redirect到,或者其他什么,它不知道什么编码是需要的。 但我也不是! 这个程序将以不同的方式被许多不同的人使用(幽默我)。 我应该玩它安全,只输出ascii(用问号replace非ASCII字符)? 或者我应该输出UTF-8,因为这些日子如此普遍?

如何在Linux中创build一个给定大小的文件?

我读过这个问题: 如何在Linux中创build一个给定大小的文件? 但是我没有回答我的问题。 我想创build一个372.07 MB的文件, 我在Ubuntu 10.08中尝试了以下命令: dd if=/dev/zero of=output.dat bs=390143672 count=1 dd: memory exhausted 390143672 = 372.07 * 1024 * 1024 还有其他方法吗? 非常感谢! 编辑:如何在Linux命令行上用小数查看文件的大小。 我的意思是,命令行ls -hl只是说:“373M”,但文件实际上是“372.07M”。

Linux的头部/尾部有偏移量

有没有办法在Linux的要求头或尾,但有一个额外的logging偏移忽略。 例如,如果文件example.lst包含以下内容: row01 row02 row03 row04 row05 我使用head -n3 example.lst我可以得到1 – 3行,但如果我想要它跳过第一行,并获得第2 – 4行呢? 我问,因为一些命令有一个头可能不是在search结果内。 例如du -h ~ –max-depth 1 | sort -rh du -h ~ –max-depth 1 | sort -rh将返回主目录中按降序排列的所有文件夹的目录大小,但会将当前目录附加到结果集的顶部(即~ )。 头部和尾部手册页似乎没有任何偏移参数,所以也许有某种range命令,可以指定所需的行:例如range 2-10或什么?

可以'find'或任何其他工具search宽度优先的文件?

有时我知道一个文件不是很深,但是一个非常密集的子目录不允许我find我想要的文件。 可以find (或任何其他工具)使用广度优先search查找文件?

AJAX Progress:从Shell读取输出

目标 :build立一个进度条,让用户可以检查我的服务器已经下载了多less文件。 场景 :我有一个PHP脚本通过popen执行python脚本。 我做了这样的事情: $handle = popen('python last', 'r'); $read = fread($handle, 4096); pclose($handle); 这个python脚本输出到shell如下所示: [last] ZVZX-W3vo9I: Downloading video webpage [last] ZVZX-W3vo9I: Extracting video information [download] Destination: myvideo.flv [download] 9.9% of 10.09M at 3.30M/s ETA 00:02 问题 :当我读入由shell输出生成的文件时,除了最后一行,我得到了所有的shell输出! 为什么? 只需添加一下,当我通过shell运行命令时,shell光标出现在该行的末尾,并等待脚本完成。 谢谢大家

使用谷歌作为字典查找通过bash,如何抓住第一个定义?

#!/bin/bash # Command line look up using Google's define feature – command line dictionary echo "Type in your word:" read word /usr/bin/curl -s -A 'Mozilla/4.0' 'http://www.google.com/search?q=define%3A+'$word \ | html2text -ascii -nobs -style compact -width 500 | grep "*" 从google.com转储一系列的定义,例如: Type in your word: world * universe: everything that exists anywhere; "they study the evolution of […]

安装Python时出错

一旦击中 make install 我得到以下错误 /usr/bin/install: cannot create regular file /usr/local/bin/python2.6: Permission denied make: *** [altbininstall] Error 1 我不是root用户,所以我认为它的权限问题。 我有我自己的子文件夹在/home/my_username有没有办法通过提供一个更具体的命令来完成python安装吗? 另外,Python 2.4已经安装,我怎么确保我实际上使用2.6? 非常感谢!

sys.stdin不closuresctrl-d

我在program.py中有以下代码: from sys import stdin for line in stdin: print line 我运行,input行,然后按Ctrl + D ,但程序不会退出。 这工作: $ printf "echo" | python program.py 为什么按Ctrl + d时程序不能退出? 我正在使用Fedora 18terminal。

在terminal中运行文本文件

有谁知道是否有一种方法来自动运行在shell命令列表(从文本文件)? 我需要运行很多脚本(大约1000)。 脚本是在Python中,每个取两个参数(dir_#和sample#) 我所做的文本文件看起来像这样… python /home/name/scripts/get_info.py dir_1 sample1 python /home/name/scripts/get_info.py dir_2 sample2 python /home/name/scripts/get_info.py dir_3 sample3 python /home/name/scripts/get_info.py dir_4 sample4 … 所以,我希望将这个文本文件作为parameter passing给terminal中的命令,可以自动完成这项工作… 提前致谢, 佩希