Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

7
以相反顺序打印外壳参数
我有点卡住。我的任务是按相反的顺序将参数打印到脚本中,但第三个和第四个除外。 我的代码是这样的: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr $i - 1` done 由于我讨厌eval(向PHP致意),因此我在寻找一种没有解决方案的解决方案,但找不到解决方案。 如何动态定义参数的位置? PS:不,这不是一项家庭作业,我正在学习考试外壳,因此我尝试解决旧的考试。

3
wc -L报告制表符的行长为8。错误或功能?
-L是的有用功能wc,所以我想。打印最长行的长度。由于某种原因,它会将单字节的制表符扩展为8个长度。 是否可以通过某种方式将其设置为不“扩展”制表符?这项扩张背后的原理可能是什么? echo -n $'\t' | wc -L 输出 8 wc(GNU coreutils)7.4 GNU bash,版本4.1.5

3
免费的Shell帐户安全吗?
我试图确定像shellmix.com这样的免费shell帐户的安全性。我从未用过自己的东西,但想将其推荐给对学习Shell编程感兴趣的人。他们可以安全地用于此目的吗?我应该注意什么?

4
在哪里放置交换空间,开始或结束位置以及其他交换问题
我应该把我的掉期放在哪里?Debian安装提供两种选择:(1)在磁盘空间的末尾或(2)在磁盘空间的开始。什么是最佳? 给定计算机具有512Mb RAM的最佳交换量是多少?我应该有多个交换吗? 我应该将交换空间定义为逻辑分区还是主分区? 我正在40 GB磁盘上安装测试32位的Debian 6。
12 swap 

3
为什么按访问时间排序文件不起作用?
我尝试使用命令 ls --time=atime 它在一个目录中工作,但不在另一个目录中工作。我在vim,evince和其他应用程序中打开了某些文件,但是命令文件的访问时间没有改变。 当我键入时touch file.txt,访问时间会更改,但是当我键入时vim file.txt,访问时间不会更改。 怎么了
12 filesystems  files  ls  atime 

2
使用Modeline设置Vim文件类型无法正常工作
根据对此问题的公认答案,我正在尝试在vim中使用模式行来强制某些文件中的文件类型检测。 例如,在名为gitconfig(请注意没有前导.)的文件的顶部,我有以下几行: # vim: set filetype=gitconfig : modeline在我的系统上启用。但是,当我在vim中打开文件时,set filetype?返回conf,而不是预期的gitconfig。 我的vim配置的其他部分(例如filetype.vim)是否可能导致这种奇怪的行为? 编辑以回应评论: set compatible? 退货 nocompatible set modeline? 退货 modeline verbose set filetype? 返回: filetype=conf Last set from /usr/share/vim/vim73/filetype.vim 我不明白为什么系统范围的文件类型插件会覆盖我在文件本身中设置的内容。 最后一点:这是OSX随附的Vim 7.3版本。 在同一系统上使用相同版本运行的MacVim的最新版本的.vimrc行为符合预期,set ft?返回filetype=gitconfig。
12 vim  osx 


1
测量程序的磁盘I / O使用率
time 如果您想弄清楚给定命令需要多少CPU时间,这是一个很棒的命令。 我正在寻找类似的东西,可以衡量该程序和任何子项的磁盘I / O。优选地,它应该区分已缓存(因此不会导致磁盘旋转)的I / O和未缓存的I / O。 所以我想做: iomeassure my_program my_args 并获得类似于以下内容的输出: Cached read: 10233303 Bytes Cached write: 33303 Bytes # This was probably a tmp file that was erased before making it to the disk Non-cached read: 200002020 Bytes Non-cached write: 202020 Bytes 我已经看过了vmstat,iostat和sar,但这些都不是在看一个单一的过程。相反,他们着眼于整个系统。 我已经看过了iotop,但是此刻只给了我一个视角。 -编辑- snap的答案似乎很接近。 …
12 io  time  measure 

3
如何在外壳中管道MD5哈希结果
我正在寻找一种将方法的结果传递md5sum到另一个命令的简单方法。像这样: $echo -n 'test' | md5sum | ... 我的问题是不仅md5sum输出字符串的哈希值,而且输出连字符,这表明输入来自标准输入。我检查了man文件,但没有找到控制输出的任何标志。

2
在“ while IFS = read ..”中,IFS为什么无效?
我可能有绝对错误的提示,但令我信服的是,将IFS设置为预先执行/完成列表中的命令之一绝对没有任何效果。在下面的脚本中显示的所有示例中,都 使用外部IFS(在while构造之外)。 这里发生了什么?在这种情况下,我对IFS的功能是否有误解?我希望将数组拆分的结果显示在“预期”列中。 #!/bin/bash xifs() { echo -n "$(echo -n "$IFS" | xxd -p)"; } # allow for null $IFS show() { x=($1) echo -ne " (${#x[@]})\t |" for ((j=0;j<${#x[@]};j++)); do echo -n "${x[j]}|" done echo -ne "\t" xifs "$IFS"; echo } data="a b c" echo -e "----- -- -- …

2
如何列出任何DEB软件包都不维护的文件和文件夹
我正在将文件从一台Debian机器移至另一台机器,以便可以将旧机器用于其他目的。我不想丢失任何文件,因为我将无法恢复地格式化旧计算机的硬盘。 仔细考虑一下,我意识到我需要复制的所有文件和文件夹都是任何已安装的Debian软件包都不维护的文件和文件夹。是否有列出这些文件和文件夹的简单方法?
12 debian  apt  backup  aptitude 

2
从“ xset dpms”显示暂停返回后,屏幕亮度恢复为最大值
我正在运行openbox窗口管理器,并使用我的这一行autostart.sh来控制显示电源管理: xset dpms 0 60 0 这可以很好地工作,导致显示器在闲置60秒后挂起。 但是,当显示器响应鼠标移动,按键等而重新唤醒时,屏幕将处于全亮度状态。这浪费了功率,有时甚至是致盲的。如果我使用笔记本电脑的亮度控制键(Fn+ <-/ ->)来调节亮度,则第一次按下将使亮度恢复到显示器暂停之前的水平。 我想要的是让屏幕在重新唤醒显示器后立即处于暂停前的亮度,即不必按下亮度控制键之一。 我在Acer Aspire 5742上运行ubuntu 10.10。


1
BASH中的stdin / stdout名称?
我有一个带有-o log_file选项的程序,该程序将额外的数据写入log_file。 有什么办法可以将其重定向到stdout? 也就是说,是否有stdout的“特殊名称”可以用作文件名,例如CONOUT$在Windows上?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.