Articles of unix

用Awkinput列

我试图让用户input一个值来查看文件中的特定列。 有没有办法使用awk切换列,而不必在所有的开关情况下重复自己? # Code: read -p 'Enter a column:' input for i in "$file_name"; do cat "$i" | awk -v column="$input" '{ print $column }' done 这里有一个更好的解释: view_column() { for i in "$file_name"; do cat "$i" | awk -v col="$1" '{ print $col }' done } print_menu() { menu=( 'First' 'Last' 'Email' 'Exit' ) for […]

命令别名在我的脚本

我正在创build一个复制文件或目录的date附加到其名称的脚本,例如,如果文件名是test它将是test-20130901.bkup 这是我的脚本 #!/usr/bin/bash set -x getopts fd TYPE [ $TYPE = "d" ] && alias cp="cp -r" backup_error() { echo "${0##*/}: $1" exit -1 } typeset -r FROM_DIR=$2 TO_DIR=$3 if [ ! -e $FROM_DIR -a ! -d $FROM_DIR ] || [ ! -e $TO_DIR -a ! -d $TO_DIR ] then backup_error "One of the directories […]

需要将UTF8和UTF16 .csv文件转换为ASCII

我有脚本将UTF8格式的.csv文件转换为ASCII格式。 现在我想要转换UTF16文件,如果文件是ASCII保持原样。 我正在使用下面的代码单独更改UTF8和UTF16。 帮助这个在一个单一的脚本。 #/bin/bash for i in *.csv do iconv -c -f UTF-8 -t ISO-8859-1 $i -o $i."utf8" mv $i."utf8" $i done 谢谢

Linux中的whereis命令的API

是否有类似于UNIX中的“whereis”命令的API,可以从C程序中调用该命令来查找给定命令的所有实例?

如何将两个命令的输出输出并行输出到标准输出?

我想用xinput来监视击键的数量和鼠标移动的数量。 为了简化,让我们说我想要的是这两个命令: xinput test 0 xinput test 1 同时写入屏幕。 我正在使用Perl脚本,如: open(my $fh, '-|', 'xinput test 0') or die $!; while(my $line = <$fh>) { …stuff to keep count instead of logging directly to file } 编辑:像这样的东西: open(my $fh, '-|', 'xinput test 0 & xinput test 1') or die $!; 不起作用。

为什么我们不能直接在inode中存储文件名

我不明白为什么在UNIX系统中,他们不直接在inode中存储文件名,而是使用映射系统..这是因为inode的大小已经定义,不能改变,所以在长时间文件名我们不能存储它们? 或者,也许那是因为我们改变了文件名,我们不需要在inode中多做一次呢? 请告诉我,如果我错了,或者有其他解释。 提前致谢

试图了解一个简单的Linux代码

我想弄清楚以下命令在Linux中意味着什么 awk 'match($0, "##SA") ==0 {print $0} ' $1 > ${G_DEST_DIR}/${G_DEST_FILENAME} 它是否从给定参数中删除第一行并将其置于dest_dir下?

Linux,GAIN root访问的唯一方法是执行一个setuid-root文件?

我的假设是正确的,在Unix / Linux上,增加root访问权限的唯一方法是执行一个setuid根文件? 换句话说,系统调用setuid() , setgid()都是关于DROPPING权限的? 请注意,我的问题不是关于利用。

如何在vi编辑器中将colorscheme重置为默认值?

如何在vi编辑器中将colorscheme永久设置为默认值?

在shell脚本中退出尾巴-f

我似乎无法做到这一点。 这是剧本。 tail -fn0 nohup.out | while read line; do if [[ "${line}" =~ ".*ERIKA.*" ]]; then echo "match found" break fi done echo "Search done" 即使在find匹配之后,代码回显“search完成”也不会运行。 我只想要在find匹配项时运行其余的代码。 我还没有做到。 对不起,我是新的日志监控。 有没有什么解决方法呢? 我要通过Jenkins运行脚本,所以代码应该是自由stream动的,不应该要求任何用户交互。 请帮忙,谢谢。