ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

【转】linux那些事儿

2022-02-26 22:00:16  阅读:257  来源: 互联网

标签:node bin grep linux 那些 64 Linux 事儿


Linux只是一个操作系统内核而已,而GNU提供了大量的自由软件来丰富在其之上的各种应用程序。我们常说的linux实际是GNU/Linux,GNU是一个自由的操作系统。
绝大多数基于Linux内核的操作系统使用了大量的GNU软件,包括了一个shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。

一、参考学习

https://www.runoob.com/linux/linux-command-manual.html

https://man.linuxde.net/

二、常用变量

1、特殊位置参数变量

$* 
取当前shell的所有参数,将所有的命令行视为单个字符串,相当于'$1$2'。
$@ 取当前shell的所有参数,保留参数里的空白。

三、常用命令

1、查看 Kernel、GCC 以及 RedHat 版本信息

cat /proc/version
Linux version 3.10.0-693.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Aug 22 21:09:27 UTC 2017

uname -a
Linux localhost.localdomain.com 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

uname -r
3.10.0-693.el7.x86_64

more /etc/system-release
CentOS Linux release 7.4.1708 (Core)

more /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

more /etc/centos-release
CentOS Linux release 7.4.1708 (Core)

2、查看操作系统的位数

getconf LONG_BIT
64

getconf WORD_BIT
64

file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=3d705971a4c4544545cb78fd890d27bf792af6d4, stripped

3、查看 CPU 个数、核心数和线程数

# 查看 CPU 的物理个数
grep 'physical id' /proc/cpuinfo | sort -u | wc -l
1

# 查看 CPU 的核心数量
grep 'core id' /proc/cpuinfo | sort -u | wc -l
2

# 查看 CPU 的线程数量
grep 'processor' /proc/cpuinfo | sort -u | wc -l
4

# 查看 CPU 的型号
dmidecode -s processor-version
Intel(R) Core(TM) i3-4170 CPU @ 3.70GHz

# 查看 内存 方法
grep MemTotal /proc/meminfo
MemTotal: 3750308 kB

4、知道22端口被哪个进程占用

lsof -i :22 
netstat -lnp|grep 7000 

5、显示http response头信息

curl -I http://127.0.0.1:8182/webhook/comment

6、把文件内容输出到本地,并保留文件名,可以理解为直接把文件下载到本地。

curl -O http://127.0.0.1:7780/object/test02

7、操作文件夹

mkdir folderName
创建文件夹

rm -r folderName
删除文件夹

rm -rf folderName
强制删除文件夹

mv sfolderName dfolderName
重命名文件夹

8、操作文件

touch filename 比如touch index.js
创建一个空的js文件。

find path -name filename 比如find components -name "*.js"
查找指定类型的文件。

ls
查看有哪些文件

ll
查看文件的详细信息

head -n filename
查看一个文件的前n行,如果不指定n,则默认显示前n行。
tail -f storage/logs/xf-web-2015-11-30.log 查看文档内容,默认显示最后10行,比如查看服务器文件日志 vim /root/.pm2/logs/monitorApp-out.log 文本查看和编辑 cat /root/.pm2/logs/monitorApp-out.log 文本查看 cp oldfile newfile 复制文件 cp -r old/ new/ 不是把old目录里面的文件拷贝到new目录,而是把old直接拷贝到new下面。 cp -r ../teamb/xf-web . 不是把old目录里面的文件拷贝到new目录,而是把old直接拷贝到new下面。 :q git log之后要退出(不保存),并回到命令行。 :q!  强制退出,放弃修改。 :wq 保存文件后退出。 :wq! 强制保存退出。

9、vim模式

i
进入编辑模式

/
查找关键字

:
跳到某行

esc
退出编辑模式

pwd
查看当前路径

>
表示覆盖原文件内容(文件的日期也会自动更新)

>>
表示追加内容(会另起一行,文件的日期也会自动更新)

cat /etc/hosts > hosts.log
执行命令cat /etc/hosts,将其返回结果保存到hosts.log中。

& 
表示任务在后台执行,如要在后台运行redis-server,则有 redis-server &

&& 
表示前一条命令执行成功时,才执行后一条命令,如echo '1‘ && echo '2' 

| 
表示管道,上一条命令的输出,作为下一条命令参数,如 echo 'yes' | wc -l

|| 
表示上一条命令执行失败后,才执行下一条命令,如 cat nofile || echo "fail"

.
指当前目录

./
可以用来执行当前目录下的可执行文件

10、其他操作

telnet 127.0.0.1 11211
telnet连接

flush_all
清空所有键值,flush并不会将items删除,只是将所有的items标记为expired,因此这时memcache依旧占用所有内存。

11、make命令

https://www.cnblogs.com/worldleader131/p/make_command_project.html

12、export命令

https://www.runoob.com/linux/linux-comm-export.html 

# 列出环境变量
export -p

# 定义环境变量,列出分支,查找当前分支,匹配至少有一个.的
export branch=`git branch | grep \* | grep -Eo ' .+'` 
# 使用环境变量 $$branch

13、xargs命令

https://www.runoob.com/linux/linux-comm-xargs.html

14、grep命令

查找字符串。

git log develop.. --pretty=format:%B | grep -vE '^\s*$$' | cat

https://www.runoob.com/linux/linux-comm-grep.html

15、echo命令

echo -e "\033[字背景颜色;字体颜色m字符串\033[0m" 
echo -e "\e[1;31mThis is red text\e[0m"

  \e[1;31m 将颜色设置为红色
  \e[0m 将颜色重新置回

背景颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47

文本颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37

四、正则表达式

假设当前项目分支为feature/A:

grep \*
对*进行转义,查找存在*的分支,输出* feature/A

grep -Eo ' .+'
启用正则,并按该规则去查找,输出feature/A

grep -vE '^\s*$$' test.log 或者 grep -vE '^$' test.log 或者  grep -vE '^\s$' test.log
查找没有空格,空行的行。反向匹配,过滤掉空行,空格。比如输出feat: 这是一个提交。

五、安装node
1、建立一个文件夹命名node

wget https://nodejs.org/dist/v12.13.0/node-v12.13.0-linux-x64.tar.xz
tar xvf node-v12.13.0-linux-x64.tar.xz
cd /node/node-v12.13.0-linux-x64/bin

2、创建软链接,以便全局使用

ln -s /node/node-v12.13.0-linux-x64/bin/npm /usr/bin/npm
ln -s /node/node-v12.13.0-linux-x64/bin/node /usr/bin/node
node -v
npm -v

3、如果无法创建,先在/usr/bin/目录下删除已存在的

rm -rf node
rm -rf npm

六、问题与方案

1、不识别pm2

pm2: command not found

创建linux下的软连接,在linux上的设置软连接相当于windows下的配制环境变量

ln -s /node/node-v12.13.0-linux-x64/bin/pm2 /usr/bin/pm2

标签:node,bin,grep,linux,那些,64,Linux,事儿
来源: https://www.cnblogs.com/worldleader131/p/linux-sth.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有