{
"title": "一些常用命令",
"tags": [
"post",
"Linux",
"运维"
],
"summary": "一、用户和权限: 1.查看当前用户\n\nCopy\nwhoami\n\n切换用户,加'-'相当于使用要切换的用户名重新登录,环境变量、工作目录都会发生改变,切换用户一般用在使用需要特定用户起的服务,例如Elasticsearch\nCopy\nsu 用户名\nsu - 用户名\n\n添加用户并在…",
"sources": [
"xlog"
],
"external_urls": [
"https://kiryu.xlog.app/yi-xie-chang-yong-ming-ling"
],
"date_published": "2023-04-15T16:28:16.785Z",
"content": "### 一、用户和权限:\n1.查看当前用户\n```bash\nwhoami\n```\n2. 切换用户,加'-'相当于使用要切换的用户名重新登录,环境变量、工作目录都会发生改变,切换用户一般用在使用需要特定用户起的服务,例如Elasticsearch\n```bash\nsu 用户名\nsu - 用户名\n```\n3. 添加用户并在home目录下生成目录\n```bash\nuseradd -m 用户名\n```\n4.改变文件的用户,挺常用的\n```bash\nchown -R 用户名:用户组名 文件名\n```\n5.赋予文件执行权限,很常用的\n```bash\nchmod +x 文件名\n```\n### 二、网络相关\n1.更改主机名\n```sh\nhostnamectl set-hostname 主机名\n```\n2.检测网络联通性,例如检测能不能访问互联网、服务器之间通不通等\n```sh\nping ip地址或域名\n#ping baidu.com\n```\n3.查看网络相关信息\n```sh\nifconfig 或者 ip a\n```\n4.检测端口是否连通\n```sh\ntelnet 主机 端口\n# telnet 172.24.1.1 8080\n```\n5.显示端口占用情况\n```sh\nnetstat -lntp\nss -lntp\n```\n6.ssh和scp,经常用来服务器之间传文件,比较快\n```sh\nssh 用户@主机\n# ssh [email protected]\nscp 文件 用户@主机:路径\n# scp 1.txt [email protected]:/opt\n```\n### 三、进程相关\n1.就是ps命令\n```sh\nps -ef\n# 查看进程信息\n\nps -ef|grep 进程名\n# 查找进程\n\nps -ef|grep -v grep |grep 进程名\n# 只显示要查找的进程名,不显示grep进程\n\nps -ef|grep -v grep|grep 进程名|awk '{print $2}'\n# 打印出要查找的进程的进程号\n\nps -ef|grep -v grep|grep 进程名|awk '{print $2}'|xargs kill -9\n# 把要查找的进程杀掉\n```\n2.按进程名杀掉进程\n```sh\npkill 进程名\n```\n### 四、文本相关\n1.cat查看文件就不说了,也可以追加内容到文件中\n```sh\ncat <<EOF>>1.txt\nHello\nWorld\nEOF\n# 把>>换成>就会覆盖文件的内容\n```\n2.查看文件前多少行,一般不怎么用\n```sh\nhead -n 100 文件名\n```\n3.查看文件后多少行,非常常用,动态查看日志的\n```sh\ntail -n 100 -f xxx.log\n# 查看文件的后一百行并实时刷新\n```\n4.然后就是三剑客了,这里只列举一些简单的常用的用法\n```sh\nsed -n \"/关键词/p\" 文件名\n# 输出含有关键词的行,不太常用\n\nsed -i \"s/关键词1/关键词2/g\" 文件名\n# 将文件里的关键词1替换成关键词2,挺常用,换换ip地址啥的\n\ngrep -n '关键词' 文件名\n# 和sed那个一样,输出含有关键词的行\n\ngrep -rl 关键词 ./\n# 查找当前目录含有关键词的文件,挺常用,比如找找含有某ip的配置文件\n```\nawk比较复杂,我常用的就是分割文本,例如\n```sh\nawk -F '分隔符' '{print $1}' 文件名\n# 把文本按照分隔符分割并把第一列输出出来\n```\n### 五、磁盘相关\n1.查看磁盘分区情况\n```sh\nlsblk -f\n```\n2.列出磁盘\n```sh\nfdisk -l\n```\n3.格式化磁盘为ext4格式\n```sh\nmkfs -t ext4 磁盘名\n```\n4.挂载与卸载\n```sh\nmount 磁盘名 目录名\n# mount /dev/sdb /opt\n\numount 目录\n```\n5.查看文件系统\n```sh\ndf -h\n```\n6.查看当前目录占用的空间\n```sh\ndu -sh\n\ndu -h -d 1\n# 我比较喜欢这个命令,可以方便的查找目录中的大文件\n```",
"attributes": [
{
"value": "yi-xie-chang-yong-ming-ling",
"trait_type": "xlog_slug"
}
]
}