Unix & Linux

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


3
终端的长度和宽度如何通过SSH和telnet转发?
当我查看终端仿真器的长度和宽度时,stty size它的长度为271个字符,高度为71行。当我通过SSH登录另一台服务器并执行时stty size,它的长度也为271个字符,高度为71行。我什至可以登录某些Cisco IOS设备,终端仍然长271个字符,高71行: C1841#show terminal | i Len|Wid Length: 71 lines, Width: 271 columns C1841# 现在,如果我在本地计算机上调整终端仿真器(Gnome终端)窗口的大小,则stty size远程服务器和IOS中的“显示终端”都将显示不同的行长和行数。终端的长度和宽度如何通过SSH和telnet转发?
15 ssh  terminal  telnet  stty 

5
合并大量文件
我有±10,000个文件(res.1- res.10000),它们全部由一列和相等数量的行组成。本质上,我想要的是简单;将所有文件按列合并到一个新文件中final.res。我尝试使用: paste res.* 但是(尽管这似乎对结果文件的一小部分有用,但是在整个集合上执行时会出现以下错误:Too many open files。 必须有一种“简便”的方法来完成此操作,但是不幸的是,我对UNIX还是很陌生。提前致谢! PS:让您大致了解一下(我的一个)数据文件: 0.5 0.5 0.03825 0.5 10211.0457 10227.8469 -5102.5228 0.0742 3.0944 ...

3
“ sudo:来源:找不到命令”
$ source /etc/environment $ sudo source /etc/environment [sudo] password for t: sudo: source: command not found 似乎与bash要执行的外壳不同,source /etc/environment并且外壳没有source内置的外壳。 但是my和root的默认shell都是bash。 $ echo $SHELL /bin/bash 如果sudo确实使用了不同的外壳,为什么呢?我看到了slm的回复,但对我的情况不了解。
15 shell  sudo 

2
查找由特定用户创建的文件
如何查找特定用户创建的所有文件并将其显示在屏幕上? 我已经启动了一个脚本,该脚本提示当前用户输入他们想要查看其所有文件的用户名。考虑到我想包括错误检查,我已经考虑过使用if语句。 echo -e "Option 11: Display all the Files a Particular User Has Created\n\n" echo -e "Enter Username below\n" read username
15 files  find  users 

4
如何调试udev规则(在/etc/udev/rules.d/…中)
我正在创建新的基本规则 /etc/udev/rules.d/10-myrule.rules 包含: KERNEL!="sdb*", GOTO="auto_mount_end" ACTION=="add", RUN+="/usr/bin/mount /dev/sdb1 /media" LABEL="auto_mount_end" 我保存,重新启动并插入了SD卡(由识别/dev/sdb1,我看到有dmesg),但没有任何反应。当我手动执行时mount /dev/sdb1 /media,它可以工作。 如何解决/调试此类udev规则? 注意:我使用的是ArchLinux,但在任何发行版中都应该相同吗?
15 arch-linux  mount  udev 


3
捕获X11协议的流量
如何捕获X11协议的流量? 我需要找到一种方法来捕获两台计算机之间以及本地计算机上的X11服务器和X11客户端之间的X11通信。
15 x11 

3
如何读取破折号文件
我如何从终端读取破折号文件,而不是使用 ./ 例如阅读一个- file我们可以通过阅读 cat ./-file_name 问:有没有其他方法可以实现同一目标?
15 bash  cat 

3
生成-找不到命令!
我正在使用Mac OS X 10.9.4,以下是我的脚本,用于将文件从本地计算机复制到其他主机 #!/bin/bash #!/usr/bin/expect echo "I will fail if you give junk values!!" echo " " echo "Enter file name: " read filePath echo " " echo "Where you want to copy?" echo "Enter" echo "1. if Host1" echo "2. if Host2" echo "3. if Host3" read choice …

3
在shell脚本中表示布尔值的最佳实践是什么?
我知道,中有布尔值bash,但我从未在任何地方看到过它们。 我想为我的机器上一些经常查找的信息写一个包装,例如,是否插入/安装了此特定的USB驱动器。 实现该目标的最佳实践是什么? 弦吗? drive_xyz_available=true 一个数字(0代表真,≠0代表假)? drive_xyz_available=0 # evaluates to true 有功能吗? drive_xyz_available() { if available_magic; then return 0 else return 1 fi } 我最想知道的是,其他想要使用包装器的人会期望什么。他们期望布尔值,像变量这样的命令或要调用的函数吗? 从安全角度来看,我认为第二种选择是最安全的,但是我很想听听您的经验。

3
bash脚本中的“ 1 >>”和“ 2 >>”是什么意思?
我有以下bash脚本,据我了解>>用于将命令的输出附加到现有文件而不是覆盖,但是在这种情况下该怎么办?该脚本正在调用某些exe文件,以将一种格式转换为另一种格式。每个文件都有很多年,因此它通过查看文件名遍历每个文件。另外,当我运行此脚本时,我会得到“歧义重定向” #!/bin/bash source $HOME/.bashrc jobout=${1} joberr=${2} # Set some paths and prefixes yr_bgn=2000 yr_end=2000 yr=${yr_bgn} pth_data='/mnt/' pth_rst='/mnt/' while [ ${yr} -le ${yr_end} ] do ./executable1 ${pth_data}file${yr}-${yr}.nc ${yr} ${pth_rst} 1>> ${jobout} 2>> ${joberr} ./executable2 ${pth_data}file${yr}-${yr}.nc ${yr} ${pth_rst} 1>> ${jobout} 2>> ${joberr} ./executable3 ${pth_data}file${yr}-${yr}.nc ${yr} ${pth_rst} 1>> ${jobout} 2>> ${joberr} let yr=${yr}+1 …

3
如何仅在需要时才询问SSH密钥密码?
(我已经阅读了本网站上许多看起来相关的问题,我相信这是一个全新的问题。) 我在许多服务器上都有很多密钥,并且它们都受到密码短语的保护。 我喜欢输入密码和输入密码一样多-这确实浪费了生产力。 ssh-agent + ssh-add命令可用于登录外壳,这意味着您只需在登录时输入一次密码 钥匙串可用于使ssh-agent在注销后保持活动状态,例如,您可以拥有它,因此只需在启动时输入一次密码即可,或者可以使其保持活动状态约一个小时。 我遇到的问题是,这两种解决方案通常都是在shell登录中启动的(例如.zshrc),即使我不需要解锁,也要依靠我在登录时输入密码。(我对钥匙串使代理无限期地存活不满意。) 我只想在需要时才提示您输入密码(对于座席)。 这样我就可以登录到服务器A,做一些东西,然后ssh到服务器B,并在该点被要求提供密码。在服务器B上做一些事情,注销。回到A上,做一些更多的事情,再次向B SSH,不需要我的密码短语(由代理持有)。 我注意到这在Gnome之类的图形桌面上是可能的-您会弹出一个窗口,要求您在尝试ssh时立即解锁密码。所以这就是我想要的,但是要从控制台开始。
15 ssh  ssh-agent 


2
为什么我准备完全相同的USB棒的字节数不同?
我有两个相同的USB记忆棒(TrekStor 16GB),准备如下,带有c't bankix映像。 使用GParted进行准备: 删除现有分区 创建一个新的DOS分区表 用FAT32格式化存储棒,主分区 通过加载图像到摇杆usb-creator-kde。 因此,我对两个摇杆都执行了相同的步骤,但是一个靴子和另一个靴子崩溃并显示错误消息: (initramfs) mount: mounting /dev/loop0 on //filesystem.squashfs failed: No such device Can not mount /dev/loop0 (/cdrom/casper/filesystem.squashfs) on //filesystem.squashfs 然后,我尝试通过比较它们sudo cmp /dev/sdb /dev/sdc。结果是: /dev/sdb /dev/sdc differ: byte 441, line 5 这是怎么了,我该如何解决?

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.