Unix & Linux

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

6
如何从通配符扩展中获得第一场比赛?
诸如Bash和Zsh之类的Shell会将通配符扩展为参数,与模式匹配的参数一样多: $ echo *.txt 1.txt 2.txt 3.txt 但是,如果我只希望返回第一个比赛而不是所有比赛,该怎么办? $ echo *.txt 1.txt 我不介意特定于shell的解决方案,但是我想要一个可以在文件名中使用空格的解决方案。
38 shell  wildcards 

3
更改Shell的PulseAudio输入/输出?
除了扬声器和普通麦克风外,我还有一套不错的无线耳机,不时使用。 我想编写一个脚本,以在一个输入和输出源与另一个输入和输出源之间切换,实际上是在耳机和扬声器+麦克风之间切换。 我想在这之间进行更改: ...和这个: 我有办法脚本在两个输入和输出之间进行转换吗?本质上,我正在寻找这样的东西: CURRENT_INPUT="$(get-current-input-name)" CURRENT_OUTPUT="$(get-current-output-name)" if [ "$CURRENT_INPUT" == "Vengeance 2000" ]; then set-current-input "HD Pro Webcam C920" else set-current-input "Vengeance 2000" fi if ["$CURRENT_OUTPUT" == "Vengeance 2000" ]; then set-current-output "Built-in Audio" else set-current-output "Vengeance 2000" fi 有没有办法编写脚本?
38 audio  alsa  pulseaudio 

2
克隆Aperture库时,rsync“跳过非常规文件”
我正在尝试使用rsync维护我的Aperture库的备份副本。当我运行sync命令查看会发生什么时,结果如下: rsync --dry-run -r "/Volumes/Data/Aperture Library.aplibrary" "/Volumes/Backup" skipping non-regular file "Aperture Library.aplibrary/Database/BigBlobs.apdb" skipping non-regular file "Aperture Library.aplibrary/Database/Faces.db" skipping non-regular file "Aperture Library.aplibrary/Database/History.apdb" skipping non-regular file "Aperture Library.aplibrary/Database/ImageProxies.apdb" skipping non-regular file "Aperture Library.aplibrary/Database/Library.apdb" skipping non-regular file "Aperture Library.aplibrary/Database/Properties.apdb" “文件”命令说至少“ .db”文件是“ SQLite 3.x数据库”。如何使用rsync同步这些文件?
38 osx  rsync 



11
如何随机采样文件的子集
是否可以使用任何Linux命令来采样文件的子集?例如,一个文件包含一百万行,而我们只想从该文件中随机抽取一千行。 对于随机而言,我的意思是每条线都有相同的概率被选择,并且所选择的线都不是重复的。 head并tail可以选择文件的一个子集,但不能随机选择。我知道我总是可以编写python脚本来这样做的,但是我想知道是否有用于此用法的命令。

3
如何从查找程序中删除“拒绝权限”打印输出语句?
码 find / -name netcdf 输出量 find: `/root/.dbus': Permission denied find: `/root/.gconf': Permission denied find: `/root/.gconfd': Permission denied find: `/root/.gnome': Permission denied find: `/root/.gnome2': Permission denied find: `/root/.gnome2_private': Permission denied
38 find 

8
缺少文件时,rm是否没有报告?
我有一个bash脚本,我想从各个目录中删除文件。通常,它们不会出现,因为它们不是生成的,这很好。有没有办法让脚本不报告该错误,但是rm是否有其他输出报告该错误? 或者,是否有更好的命令可用来删除噪音较小的文件?
38 rm 


3
可以在命令行上设置权限来创建文件吗?
创建目录时,mkdir -m <mode> <dir>可以创建一个(或多个)具有给定模式/权限集的目录。 在命令行上是否有用于创建文件的等效项? 类似于: open("file", O_WRONLY | O_APPEND | O_CREAT, 0777); 在这里使用touch后跟是chmod我唯一的选择吗? 编辑:尝试使用teppic的建议后install,我进行了遍历strace以查看它与原子的接近程度。答案不是非常: $ strace install -m 777 /dev/null newfile ... open("newfile", O_WRONLY|O_CREAT|O_EXCL, 0666) = 4 fstat(4, {st_mode=S_IFREG|0666, st_size=0, ...}) = 0 ... fchmod(4, 0600) = 0 close(4) = 0 ... chmod("newfile", 0777) = 0 ... 尽管如此,它仍然是单个shell命令,而我以前是不知道的。

3
为什么以前的Debian软件包版本在软件包库中消失了?(与版本控制的系统配置高度相关)
场景:在基于Puppet,Chef等的版本控制的系统配置中,需要重现特定的系统状态。通过显式指定系统软件包版本来完成此操作。 最近,我们遇到了一个问题,即Debian存储库中缺少某些软件包版本。一个示例:版本2.7.5-1 + deb9u1中需要“补丁程序”软件包,但仅提供2.7.5-1 + deb9u2。另一个甚至更为严重的示例:由于安装了相关的内核,因此需要“ linux-headers-4.9.0-9-common”,并且只有“ linux-headers-4.9.0-11-common”可用。 这使得不可能再现系统的特定状态。 以上软件包只是示例(我实际上遇到过)。我对理解和解决一般问题感兴趣。 这些更新,“消失”的软件包和软件包版本背后的想法是什么? 在哪里可以获得Debian软件包的先前版本(不是真正的旧版本,而是几周之久的版本)?以一般方式应该可以自动执行安装过程。

6
有没有办法在Linux系统上暂停正在运行的进程并稍后恢复?
我必须在计算机上复制文件。数据非常大。现在,服务器需要正常服务,并且通常在这些服务器上有特定的繁忙时间范围。那么,是否有一种方法可以运行这种命令,如果服务器繁忙时间会暂停进程,而当服务器超出该范围时会恢复进程? 预期结果 cp src dst if time between 9:00-14:00 pause process After 14:00 resume cp command.

4
如何从历史记录中获取最后N条命令?
我想查看我的计算机中最后N条命令是什么history。我以为history | tail -n 5会做到这一点,但我注意到多行命令所占的行数与其相同。 $ echo "hello how are you" $ history | tail -2 how are you" 1051 history | tail -2 所以我的问题是:我是否必须解析命令的输出才能完成此任务?

7
〜/ Documents是相对路径还是绝对路径?
这只是一个词汇问题,但一直在我脑海中回荡。 它来自LPIC准备书中的实践考试。根据这本书的正确答案~/Documents是相对目录,因为它是相对于主目录的。 但是,这本书包含错别字和错误的比率很高,所以我不能认为那里写的一切都是理所当然的。在这里我并不同意,因为对我而言,它~充当由Shell扩展为变量内容$HOME或当前用户主目录路径(参见参考资料man bash)的变量,因此实际路径/home/myuser/Documents确实是绝对目录。 即使是Wikipedia,这一次对我似乎也无济于事(即使似乎确认这本书在这方面是错误的): 无论当前工作目录如何,绝对路径或完整路径都指向文件系统中的同一位置。为此,它必须包含根目录。 相反,相对路径从某些给定的工作目录开始,从而避免了提供完整的绝对路径。 再次重申,我不同意:根据此定义,/opt/kde3/bin/../lib不依赖于当前工作目录的路径应该是绝对路径,但是我目前对此的理解与本书的作者相匹配,因此该路径是相对路径。 快速的Web搜索只是增加了我的无奈,根据韦氏词典: 绝对路径 -相对于根目录的路径。它的第一个字符必须是路径名分隔符。 那么$HOME/Documents,甚至$HOME不被认为是绝对目录?还是这个定义意味着变量扩展?外壳的~特征如何?我在某处可以找到相对目录和绝对目录的可靠定义,而且我一路走错了吗?
37 shell  filenames 

3
systemd:mkdir和ExecStartPre的权限问题
我有这个(缩短)systemd服务文件的问题: [Unit] Description=control FOO daemon After=syslog.target network.target [Service] Type=forking User=FOOd Group=FOO ExecStartPre=/bin/mkdir -p /var/run/FOOd/ ExecStartPre=/bin/chown -R FOOd:FOO /var/run/FOOd/ ExecStart=/usr/local/bin/FOOd -P /var/run/FOOd/FOOd.pid PIDFile=/var/run/FOOd/FOOd.pid [Install] WantedBy=multi-user.target 假设FOOd为用户名,FOO为组名,这对于我的守护程序已经存在/usr/local/bin/FOOd。 我需要创建目录/var/run/FOOd/启动守护进程之前/usr/local/bin/FOOd通过# systemctl start FOOd.service。这失败,因为由于权限的原因mkdir无法创建目录: ... Jun 03 16:18:49 PC0515546 mkdir[2469]: /bin/mkdir: cannot create directory /var/run/FOOd/: permission denied Jun 03 16:18:49 PC0515546 systemd[1]: FOOd.service: control process …

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.