杂记连载之Linux日常命令(续)

jobs -查看正在后台中执行的进程

ps - report a snapshotof the current processes.

ps 显示前台的进程

ps -x 查看系统中属于自己的进程。

ps -au 查看系统中所有用户的进程。

ps -aux 查看系统中包含系统内部的及所有用户的进程。

ps -e To seeevery process on the system using standard syntax

 

chown 修改文件和文件夹的用户和用户组属性

例sudo chown root file

chown -R foo:net/tmp/tmp(将/tmp/tmp目录改为net组foo所有)

chmod 修改文件和文件夹读写执行属性

chmod a+r file 增加读权限对file的所有用户

chmod a-x file 删除执行权限对file的所有用户

chmod 777 *

chmod u+s file

 

查找变量、函数等所在的文件

grep <str>* -rni path

-r --recursive

-i --ignore-case

-n --line-number

 

在键入命令时的几个快捷键:

Ctrl + a - 跳到行首

Ctrl + e - 跳到行尾

Ctrl + r - 查找历史命令

Ctrl + u -Delete backward from cursor // 密码输入错误的时候比较有用

 

tar命令参数:

-j--bzip2:filter archive through bzip2,use to decompress .bz2 files

-v--verbose:verbosely list files processed

-x--extract,--get:extract files from an archive

-z--gzip,--gunzip,--ungzip:filter the archive through gzip

-f --file:usearchive file

-c--create:create a new archive

某测试tar cvf archive.tar files&dir/ --250+M

tar zcvfarchive.tar.gz files&dir/ -- 77M

tar jcvfarchive.tar.bz2 files&dir/ -- 55M

bzip2的压缩效率高于gzip,速度慢于gzip,频繁解压缩时使用gzip.

在unix下*.* 的意思是包含有点的文件,不包括点开头的文件。

.* 的意思是所有点开头的文件。

* 的意思是全部文件,但是不包括点开头的文件(所谓的隐含文件)(目录下.config之类文件不会被打包)

tar zcvffile.tar.gz /home/user/ 会打包所有的文件

tar zcvffile.tar.gz /home/user/* 打包除了隐藏文件外的所有文件

bzcat命令解压文件到标准输出,查看.bz2文件内容(不进行解压)。

 

linux批量修改扩展名为.asp的文件修改为.html

rename's/.asp$/.html/' *

linux批量修改文本中".asp"串->".html"

sed -i"s/\.asp/\.html/g" *.*

sed批量修改不成功可能是权限问题。

sed -- streameditor,遇到的常是批量修改文本内容,更多具体使用,没有实验,可在遇到类似问题时具体查找。

 

shutdown -h now 现在立即关机

shutdown -r now 现在立即重启

shutdown -r +3 三分钟后重启

shutdown -h +3"The System will shutdown after 3 minutes" 提示使用者将在三分钟后关机

shutdown -r20:23 在20:23时将重启计算机

 

比较两个文件的不同之处(我是经常使用Beyond Compare进行比较)

diff -uNr file1file2

 

为linux-2.6目录建立软连接linux

ln -s linux-2.6/linux

ln -s linux-2.6/linux/ (错误的方式)

在工程的Makefile中,一般指明路径为“linux”,这样,在修改了所使用的内核版本时不会对Makefile进行修改。

 

du - estimatefile space usage.

-h--human-readable

使用du -sh dirs 查看目录占用磁盘空间的大小

 

stat命令查看文件的状态:访问、修改时间等

 

想要在当前目录及子目录中查找所有的"*.txt"文件

find . -name"*.txt"

想要的当前目录及子目录中查找文件名以一个大写字母开头的文件

find . -name"[A-Z]*"

(对于正则表达式的使用,可令查阅资料)

删除路径下所有相同名字目录 find . -name ".svn" |xargs rm -fr


echo"\thello" //打印\thello

echo -e"\thello" //打印(Tab)hello

echo

NOTE:your shellmay have its own version of echo which will supercede the version describedhere. Please refer to your shell's documentation for details about the optionsit supports.

echo -n do notoutput the trailing newline.

-e enableinterpretation of the backslash-escaped characters listed below.

 

touch - changefile timestamps.

update theaccess and modification times of each FILE(argument) to the current time.

A FILE argumentthat does not exist is created empty, unless –c or –h is supplied.

 

cd - 返回上一次(不是上一级)的目录

uptime - Tellhow long the system has been running.

 

将系统时间设定成2009年5月10日

#date -s 05/10/2009

将系统时间设定成上午10点18分0秒

#date -s10:18:00

 

pwd -P  显示出实际路径,而非使用连接(link)路径。在makefile常可见。


<think>首先,用户的问题是:“我想了解netstate命令Linux下的功能和用途 请问Linux netstate 命令的作用是什么”。用户可能打错了,应该是“netstat”,因为在引用中提到了“netstat”,而且“netstate”在引用[1]和[2]中都是拼写错误,应该是“netstat”。在引用[1]中,有“netstat -st”和“netstat -su”,在引用[2]中,有“netstate -tnul”,但上下文是查看端口的,所以应该是“netstat”。所以,我会假设用户指的是“netstat”。 我的回答需要遵循系统级指令: - 所有行内数学表达式使用$...$格式。 - 独立公式使用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 在回答中引用的段落末尾自然地添加引用标识,例如[^1]。 用户可见层: - 回答结构清晰,帮助用户逐步解决问题。 - 尽量保证回答真实可靠。 参考站内引用: - 引用[1]: 关于netstat的用法,如显示TCP或UDP端口的统计信息。 - 引用[2]: 提到“netstate -tnul”,可能是“netstat -tnul”,用于查看本机开放端口。 - 引用[3]: 提到“netstate scp”,但似乎是杂记,不太相关。 用户的问题是询问netstat命令的功能和用途。所以,我需要解释netstat是什么、它的作用、常见用法等。 结构回答: 1. **介绍netstat命令**:简要说明netstat是什么。 2. **主要功能**:列出netstat的主要用途。 3. **常见用法**:提供一些常见命令示例。 4. **添加引用**:在相关部分末尾添加引用标识。 5. **生成相关问题**:在最后添加相关问题。 确保使用中文。 关键点: - netstat(Network Statistics)是一个命令行工具,用于显示网络连接、路由表、接口统计等信息。 - 它可以帮助监控网络活动和故障排除。 - 常见选项:如显示所有连接(-a)、显示TCP连接(-t)、显示UDP连接(-u)、显示监听端口(-l)、显示进程ID(-p)等。 从引用中提取: - 引用[1]:显示TCP或UDP端口的统计信息(netstat -st 或 -su),显示PID和进程名称(netstat -p)。 - 引用[2]:查看本机开放端口(netstat -tnul)。 - 引用[3]:不太相关,但提到“netstate scp”,可能是错误。 所以,在回答中,我会整合这些信息。 添加数学表达式:由于问题涉及命令,不是数学内容,但如果可能,可以提到一些统计信息,比如端口号或计数,但可能不需要数学公式。指令说“所有行内数学表达式必须使用$...$格式”,但在这个上下文中,可能没有数学表达式。我应该避免添加不必要的数学。如果有机会,比如在解释统计时,但最好保持简单。 生成相关问题:在回答结束后,添加“相关问题”部分。 回答结构: - 开头:直接回答用户问题。 - 主体:逐步解释功能、用途、常见用法。 - 结尾:总结。 - 然后:添加相关问题。 引用标识:在引用信息的地方添加[^1]、[^2]等。 例如: “netstat 可以显示 TCP 端口的统计信息,例如使用 netstat -st [^1]。” 相关问题: 1. 如何查看特定端口的网络连接? 2. netstat 与其他网络工具如 ss 有什么区别? 3. 如何安装或使用 netstat? 确保回答真实可靠:基于标准Linux知识。</think>### Linux netstat 命令的功能和用途 netstat(Network Statistics)是一个强大的 Linux 命令行工具,主要用于监控和分析网络连接、路由表、接口统计信息等。它帮助系统管理员诊断网络问题、优化性能,并确保网络安全。netstat 是 net-tools 软件包的一部分,在现代系统中可能被更先进的工具(如 `ss`)取代,但它仍广泛用于各种 Linux 发行版(如 Ubuntu、CentOS)中。下面我将逐步解释其核心功能和常见用法,确保回答基于可靠的 Linux 知识来源[^1][^2]。 #### 1. **主要功能** netstat 的核心作用是提供网络状态的实时快照,包括: - **显示网络连接**:列出所有活动的 TCP、UDP 和 Unix 域套接字连接。 - **路由表信息**:展示系统的路由配置,帮助理解数据包如何被转发。 - **接口统计**:报告网络接口(如 eth0、wlan0)的流量数据,包括发送和接收的字节数、错误包计数等。 - **监听端口**:识别哪些端口正在监听连接,常用于安全审计。 - **进程关联**:显示每个网络连接对应的进程 ID(PID)和进程名称,便于追踪问题应用。 这些功能使 netstat 成为网络故障排查、性能监控和安全检查的必备工具。例如,它可以检测异常连接(如未授权访问)或分析带宽使用情况[^1][^2]。 #### 2. **常见用途和命令示例** netstat 通过命令行选项定制输出。以下是一些常见场景和用法(基于引用[1][2]): - **查看所有活动连接**: 使用 `-a` 选项显示所有 TCP 和 UDP 连接(包括监听和已建立连接)。 ```bash netstat -a ``` 输出示例:列出本地地址、远程地址、状态(如 ESTABLISHED、LISTEN)等。 - **显示 TCP 或 UDP 端口的统计信息**: 使用 `-s` 选项查看协议级统计,如 TCP 重传次数或 UDP 错误包数。结合 `-t`(TCP)或 `-u`(UDP)进行过滤[^1]。 ```bash netstat -st # 显示 TCP 统计信息 netstat -su # 显示 UDP 统计信息 ``` - **查看本机开放端口**: 使用 `-tunl` 选项组合,显示所有监听中的 TCP 和 UDP 端口(`-t` for TCP, `-u` for UDP, `-n` 禁用域名解析, `-l` for listening)[^2]。 ```bash netstat -tunl ``` - **显示进程 ID 和进程名称**: 使用 `-p` 选项关联连接与进程,便于识别哪个程序在使用特定端口(需要 root 权限)[^1]。 ```bash netstat -p ``` - **接口流量统计**: 使用 `-i` 选项报告网络接口的输入/输出数据,如错误率或丢包计数。 ```bash netstat -i ``` 这些命令可以结合其他工具(如 `grep`)进行过滤,例如 `netstat -tunlp | grep 80` 查看 HTTP 端口 80 的使用情况。 #### 3. **注意事项** - **安装和依赖**:netstat 通常预装在大多数 Linux 系统中。如果缺失,可通过包管理器安装 net-tools(如 `sudo apt install net-tools` 在 Ubuntu)。 - **性能影响**:在高负载系统中,频繁运行 netstat 可能增加 CPU 开销。建议用于诊断而非实时监控。 - **替代工具**:现代 Linux 推荐使用 `ss`(Socket Statistics)命令,它更高效且支持更多选项。但 netstat 语法简单,适合初学者[^2]。 总之,netstat 是一个多功能网络诊断工具,能帮助您快速了解系统网络状态。如果您有具体场景(如检查防火墙或端口冲突),可提供更多细节,我会进一步解释!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值