发信人: zhcharles(弦下之意 -> 寻)
整理人: sungang(2003-07-07 15:43:03), 站内信件
|
问:如何将 man 文件转为文本文件?
答:如要将 ls 的 man 手册转为文本文件,命令如下:
man ls | col -b > outfile
问:如何快速切换当前目录?
答:在 UNIX 下要在切换目录是非常方便的,以下列出各个快速切换当前目录的命令。
cd .. 返回上级目录
cd ../.. 进入上二级目录
cd - 返回上一次进入的目录
cd 进入用户自己的主目录
cd ~ 进入用户自己的主目录
注意:因为 UNIX 下的命令输入格式非常严格,所以不能像在 DOS 下那样将命令和参数连在一起输入,如要进行上级目录,在 DOS 下可能这样输入 cd.., 但在 UNIX 下,系统会说找不到 cd.. 这个命令,正确的输入是要在命令和参数之间有一个空格 cd ..。
问:让 ls 只显示目录名
答:ls -l | grep ^d
问:让 ls 只显示文件名
答:ls -l | grep ^f
问:让 ls 以颜色显示目录名和文件名
答:ls --color=auto ( under linux )。
要在 FreeBSD 下让 ls 以颜色显示目录名和文件名,需要安装 colorls 这个程序。可用 pkg_add 来进行安装,安装完成后,在 /etc/profile 或用户主目录下的 .bash_profile 文件中加入:
alias ls=ls -G
以后运行 ls 时,即会以颜色显示目录名和文件名。
问:修改 FreeBSD 的登录提示信息
答:每一次登录系统,系统都会派生一个 gettty 进行来响应用户的登录请求,此时 gettty 会向用户显示登录提示信息,而这些提示信息是由 gettty 的配置文件 /etc/gettable 指定的,我们可以对 /etc/gettable 进行修改来修改登录的提示信息。
问:如何加快 FreeBSD 的启动速度?
答:将 autoboot 0 加入到 /boot/loader.rc 里,可以不用等 10 秒
问:如何以 root 的身份远程登录系统?
答:要对远程的系统进行管理就需要用到远程登录。但在安全上的考虑,root 是不能直接远程登录系统,所以要以 root 的身份远程登录系统就要另想办法。我们可以先以一个普通用户的身份来登录系统,然后利用 su 功能将自身变成 root 的身份。这样就基本上同以 root 登录的效果是一样的。但有一些问题是要注意的:1、用 su 是,如果指定 - 参数,将会在转换身份时执行转换后用户的环境变量设置,即读即用户目录下的 .bash_profile (bash),如果只用 su 命令,则不会读取该文件的内容。2、要转换身份的普通用户必须是 wheel 组的成员,否则不能使用 su 命令转换成超级用户的身份。
问:如何快速引用主目录的文件?
答:~ 是指用户自己的主目录,所以如果用户要在其它目录引用自己的目录时,可以用以下的快捷方式。
cp ~/myfile /tmp 将用户的主目录下的 myfile 文件拷贝到 /tmp 目录下。
问:如何只显示子目录?
答:ls -l | grep ^d
问:如何只显示文件?
答:ls -l | grep ^-
问:如何统计当能目录下的子目录数?
答:ls -l | grep ^d | wc -l
问:如何统计当能目录下的文件数?
答:ls -l | grep ^- | wc -l
问:为什么不能进行象“pub-mail”这样的目录?
答:在 UNIX 下,shell 是用 - 来指参数的,所以要进行象“pub-mail”的目录时,shell 会认为 pub 是一个目录而 mail 是一个参数,所以是不能进行正确操作的。要进行这样的目录,只要在输入时在 - 前面加入 \ 即可。
cd pub\-mail
或用 "" 括起来:
cd "pub-mail"
问:如何解压扩展名为的 .tgz 和 .tar.gz文件?
答:以扩展名 .tgz 或 .tar.gz 结尾的文件是 tar 命令和 gzip 命令的结晶品。所以要解开以 .tgz 结尾的文件时,就需要用到 tar 和 gzip 命令。 假如要解压的文件名为 myTGZfile.tgz,操作方法如下:
gzip -D myTGZfile.tgz | tar xvf -
也可以直接用 tar 命令解压
tar zxvf myTGZfile.tgz
还可以用 tar 的 -C 参数指定解压后的目标目录。即如果要将文件解压到 /usr/local 目录下,不必将文件拷贝到 /usr/local 下再解压,可以在任何一个目录将该文件解压,然后用 -C 参数指定解压的目标目录 /usr/local,操作如下:
tar zxvf myTGZfile.tgz -C /usr/local
问:如何查找指定的正在运行的进程?
答:如要找名为 httpd 的进程,操作如下:
ps -auwx | grep httpd
问:用 mail 发送带附件的邮件
答:用重定向的方法可使 mail 发送带附件的邮件,操作如下:
mail [email protected] -s "Hi,friend!" < attach.file
问:如何重启一个进程?
答:如果刚刚修改了 httpd 的配置文件,可以用重启 httpd 进程的方法来让 httpd 重读 httpd 的配置文件,使新设置的内容生效。操作如下:
首先找出 httpd 的进程 ID(PID)
ps -auwx | grep httpd
kill -HUP httpd's PID
问:用 nohup 命令让用户退出后,用户的进程也可以继续运行
答:当用户退出登录后,用户所运行的程序会被自动 kill 掉,因为这些进程是承继用户的 shell 运行的,如果用户退出后,用户的 shell 也会被 kill 掉,那么那些由 shell 派生的进程自然会被 kill 掉。要让用户的进程在用户退出后也可以一直运行,可用 nohup 命令,操作如下:
nohup myProgram &
这样用户的 myProgram 进程会在后台运行。并且,当用户退出后,该进程也会一直运行,直至被用户或 root kill 掉或关机。
注意:因为用 nohup 运行的程序不会在显示器上显示运行信息,所以所有的信息会被保存在一个以进程 + .output 命名的文件里。
问:最近装了台FreeBSD4.0,两块网卡, 配置网卡的时候提示什么 no duplicate,到是不影响使用,但屏幕老提示: /kernel : arp : xxx.xxx.xxx.xxx is on 网卡一 but got reply from 00:a 0:24:26:ab:a0 on 网卡2 ,两块网卡在同一个网段.我想知道我如何禁止掉它? 如果必须修改内核源代码,那请问在什么地方修改?
答 1 :它仅仅是个log信息,不是错误,如果你一定要去掉这个信息的话,它在 /usr/src/sys/netinet/if_ehter.c 中
log(LOG_ERR, "arp: %s is on %s%d but got reply from %6D on %s%d\n",...);
去掉这句就可以了.
(由 phj 发表)
答 2 :使用arp命令进行静态arp映射,可能会防止这种错误信息。
(由 wb 发表)
(摘自 www.cn.freebsd.org 的 maillist)
问:如何将文件容量变为 0 字节?
答:如何要将文件 access_log 文件的容量变为 0 字节,可用以下命令:
cp /dev/null access_log
或
cat /dev/null > access_log
问:如何让启动脚本的设置生效?
答:我们通常会在 .bash_profile 等启动脚本里加入常用的设置,以免每次登录都要设置一次,但这个脚本只在用户登录时才会被读取。那么有没有办法让里面设置的内容即时生效呢?用以下方法即可:
source .bash_profile
也可以直接运行它一次:
sh .bash_profile
问:如何查看已输入的命令?(以 bash 为例)
答:当用户登录后,用户所输入的命令都会记录在用户目录下的 .bash_history 这个文件里。用 cat .bash_history 即可查看已输入的命令。
问:程序出错导致“死机”了怎办?
答:有时程序出现错误,可能会导致控制台不响应,出现死机现象。其实这时并不是机器的硬件出错,而只是程序不响应而已。只要从另外一个控制台登录(alt + Fx),然后用 ps auwx 查出出错程序的 PID,然后用 kill -9 PID 将其进程杀死即可。这样系统又可以继续进行各方面的操作了。
--------------------------------------------------------------------------------
水平有限,请批评指教!
小传 ( Charles Feng )
[email protected]
---- 凉,我经常都冲架!
不过牛奶就太甜,油又太滚!
所以我冲泡泡浴!
--
情越真,妒越深。夜半哀音,传奇一生!
小传 ( Charles Feng )
POPO:[email protected] (与 E-MAIL 共用)
|
|