Unix & Linux

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

1
如何根据周围的声音自动调节音量?
我住在一条大路旁。晚上开着窗户真是凉爽,间歇地,很大声。如何根据内置麦克风输入自动调节音量?如果设置音量以便在汽车经过时能听到电影中的讲话,则其他时间声音会很大,并且对附近的人(外面和邻居)感到非常讨厌。 我的系统是Debian Buster,尽管我可能可以得到一个通用的解决方案。如果没有可用的软件包可以执行此操作,那么从默认麦克风中提取响度的命令将有助于对此进行脚本编写。

1
如果只包含特定数字,则使用sed删除整行
我有一个txt文件 123 456 789 456 123456 我想从文件中删除特定字符,即(123)。我尝试过 $ sed -i '/123/d' dummy.sh $ vi dumm.txt 456 789 456 在下面的命令中,当我运行时,两个单词(123和123456)都将被删除,但是我只需123要从文件中删除 $ sed -i 's/123//g' dummy.sh $ vi dumm.txt 456 789 456 456 当我运行以下命令时,123它将被替换为null。 任何人都可以说如果只包含特定数字则删除整个行吗?

3
/之间的差异复制内容文件夹。和/ *在Linux中
从我读过的文件夹中复制内容,用途是: cp -rfva ../foldersource/. ./ 但这也有效 cp -rfva ../foldersource/* ./ 有什么区别吗? 例如,如果我想使用删除文件夹中的内容。: rm -rf ../foldersource/. 我得到错误: rm: rejet delete folder '.' or '..': 但是带星号可以 rm -rf ../foldersource/* 那么,星号是可以在任何地方使用的更好的选择吗?
8 linux  shell 

2
如何使用sed或awk将字符串添加到.txt文件中的所有行中,除了少数字符外
我有一个名为的文本文件xid.txt: xid: SC48028 id: artf398444 xid: indv1000 id: indv24519 xid: SC32173 id: artf398402 xid: SC21033 id: artf398372 xid: 1001 id: tracker4868 xid: wiki1000 id: wiki10709 xid: proj1234 id: proj12556 我需要在'SC48028','SC32173'...之前添加字符串'PT_'。字符串“ SC ...”可以任何组合开头,可以是“ AC ...”或“ DL ..” 要求的输出: xid: PT_SC48028 id: artf398444 xid: indv1000 id: indv24519 xid: PT_SC32173 id: artf398402 xid: …

2
在Debian Stretch上安装PHP 5.3(9)
我正在将一个非常老的服务器(Debian etch)迁移到Debian Stretch,并且开发的每个应用程序都存在PHP问题。有些可以固定,有些不能固定(如几个drupal 6站点)。将来,单个应用程序都将在PHP7.0下提供服务,但是直到那天,我需要PHP5.3为它们提供服务。 我知道Debian Stretch对可共同安装的PHP版本具有某种“本机”支持,但是我发现的所有示例都是PHP5.6(Jessie版本):https ://pehapkari.cz/blog/2017/03/27 / multiple-php-versions-the-easy-way / 另外,我发现在Debian Jessie,Wheezy等上可以协同工作的PHP5.3和PHP5.4或PHP5.6的一些示例,但在Debian Stretch(PHP7.0)上却不行:https ://superuser.com/questions/913792 / php-5-3-10-on-debian-jessie 因此,首先,我需要知道在Debian Stretch的apache2上让PHP7.0和PHP5.3一起工作是否可行。 第二,我需要弄清楚该怎么做。 我不是sysadmin,所以我的debian知识正在从头开始。 谢谢。
8 debian  php  php5  php7 

1
屏幕实际上是如何工作的?
我刚刚了解到screen,它看起来很棒。 一些问题: 它们实际上如何工作? 为什么即使发生了不好的情况,下载/进程也不会在屏幕上中断?

2
如何在chroot中执行“ ls”命令?
我有浏览器shell 皮带,并且正在php中执行shell命令,并将它们重现到浏览器中,我刚刚发现chroot命令,并且想ls在更改后的root上的根目录上运行,实际上,我需要运行bash -c "ls /"。我已经尝试过了(我没有sudo尝试过,但是没有用): sudo chroot ~/projects/jcubic/leash ls 但出现错误: chroot: failed to run command ‘ls’: No such file or directory 我如何正确使用此命令?是否可以在其他根目录上运行ls? 当我尝试在不使用sudo的情况下运行chroot时,出现此错误: chroot: cannot change root directory to '/home/kuba/projects/jcubic/leash': Operation not permitted
8 ls  chroot 

1
无法删除$ HOME中的文件
我必须备份我的整个系统,因为我的硬盘快要死了。 在$ HOME中,有一个.rsync.log我无法以用户或root身份删除的文件。 LANG=C rm -f /media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log rm: cannot remove '/media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log': Operation not permitted 我运行了文件系统检查,但这没有用。 LANG=C getfacl /media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log getfacl: Removing leading '/' from absolute path names # file: media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log # owner: alex # group: alex user::rw- group::r-- other::r-- 和 lsattr /media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log -----a-------e-- /media/alex/3c68c336-bf8d-46f8-bc04-58d3e160f2b1/alex/.rsync.log 文件系统是ext4。 从$ HOME进行备份之前,需要删除该文件。我该怎么办?


1
在Linux下复制文件时,如何保留Windows文件属性?
我正在使用在Linux机器上运行的自定义Bash脚本来大量复制FAT32格式的USB驱动器。 我需要保留Windows文件属性,例如“隐藏”。 我使用rsync(或dd与更新版本一起使用find,mkdir以强制I / O同步以获得更好的稳定性和最佳带宽使用)。 我盲目尝试-X并-A切换为rsync,据说保留了一些文件属性,但它们似乎不适用于Windows文件属性。 在Linux环境中,有什么方法可以读写Windows文件属性? 如果没有更简单的方法,我可以在复制后应用它们。 我不想dd使用整个源文件系统,因为这将无法优化,特别是当您需要编写数百个驱动器时。有时,驱动器的容量为16GB,并且其中只有几个GB的文件,而一个哑巴dd会复制所有16GB的存储空间,这使得它在生产中无法正常工作。 我已经在网上搜索过,但是看起来Linux扩展属性与Windows文件属性无关,并且我还没有找到任何读写信息(或仅将其与文件一起复制)的方法。
8 files  windows 

2
ZSH中类似鱼的参数完成搜索
我在摆弄鱼,发现这种方便的行为 如果输入wget -<tab><tab><tab>,则会进入交互式菜单。但是,键入时,我搜索了参数本身的描述。我在zsh中尝试了此操作,在此菜单中键入内容似乎只能使我回到交互式提示中。有没有办法在zsh中实现类似的功能?

1
在bash中创建我自己的cp函数
对于一项作业,我被要求巧妙地编写一个bash函数,该函数具有与该函数cp(副本)相同的基本功能。它仅需将一个文件复制到另一个文件,因此无需将多个文件复制到新目录。 由于我是bash语言的新手,所以我不明白为什么我的程序无法正常工作。原始功能要求覆盖文件(如果已存在),因此我尝试实现该功能。它失败。 该文件似乎在多行上失败了,但最重要的是,在这种情况下,它检查了要复制到的文件是否已经存在([-e "$2"])。即使这样,它仍然显示如果满足该条件则应该触发的消息(文件名...)。 谁能帮助我修复此文件,从而可能对我的基本语言理解有所帮助?代码如下。 #!/bin/sh echo "file variable: $2" if [-e file]&> /dev/null then echo "The file name already exists, want to overwrite? (yes/no)" read | tr "[A-Z]" "[a-z]" if [$REPLY -eq "yes"] ; then rm "$2" echo $2 > "$2" exit 0 else exit 1 fi else cat …

1
非确定性图形卡设备名称
我的系统包含三张图形卡,一张radeon和两张nvidia。 我正在尝试配置多座设置,但是图形卡的“设备名称”不稳定,它从一种引导更改为另一种引导。 例子 开机1 Radeon卡 /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card1 Nvidia 1卡 /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card0 Nvidia 2卡 /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2 开机2 Radeon卡 /sys/devices/pci0000:00/0000:00:03.0/0000:01:00.0/drm/card0 Nvidia 1卡 /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/drm/card1 Nvidia 2卡 /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0/drm/card2 等等... 此问题使任何多座配置都不稳定(我使用loginctl),因为将设备分配给座位是基于这些设备名称的。另一个真正的问题是,这会同时更改内核级别和Xorg级别的图形卡的连接器名称(即VGA-1变为VGA-2等),因此我无法通过xorg.conf进行任何监视器配置,也无法使用“ video =“内核选项,这在我的设置中是必需的,以强制启用没有EDID的旧crt监视器。 这个“ card0”“ card1” ..是不确定的,是否正常?是否是Bug或可以配置的东西(udev或类似的东西)? 编辑: 正如@dirkt用户在评论中说的那样,在systemd级别是不确定的,实际上多座位配置本身是可以的。我的主要问题是输出名称的不可靠性。我需要它们在内核级别指定“ video = VGA-1:e”以强制启用输出。我需要在xorg级别上使用 Option "Monitor-VGA-1" "Monitor-x"。

4
如何调试:tar:孤独的零块
如何调试呢?最近几天,这个问题突然出现了。网站的所有备份均已损坏。 如果备份仅保留为tar,则没有问题,但是tar被压缩为原样,gz否则xz我无法解压缩它们。 有很多可用磁盘 Local disk space 2.68 TB total / 2.26 TB free / 432.46 GB used 错误 tar: Skipping to next header[===============================> ] 39% ETA 0:01:14 tar: A lone zero block at 2291466===============================> ] 44% ETA 0:01:13 tar: Exiting with failure status due to previous errors 878MiB 0:00:58 [15.1MiB/s] …

2
为什么不找到/ rm -iname'* phpmyadmin'删除phpMyAdmin-Version-XYZ.zip?
我有以下代码: find ./ -iname '*phpmyadmin' -exec rm -rf {} \; 它删除名为的目录phpmyadmin,但不会删除名为的文件phpMyAdmin-Version-XYZ.zip 即使删除了-rf,它也仍然不会删除(可能是因为-iname的第二个问题不影响大小写不敏感)。 有没有办法删除单个rm(文件,目录,软链接)中的任何inode? 为什么添加-iname无效? 注意:我没有在中找到“删除任何inode”参数man rm。
8 find  rm 

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.