日常开发工具

在 CentOS 系统上安装 Google Chrome 浏览器,可以按照以下步骤进行:

添加 Google Chrome 的 YUM 源
在终端中输入以下命令:

sudo tee /etc/yum.repos.d/google-chrome.repo <<-‘EOF’
[google-chrome]
name=google-chrome - $basearch
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
EOF
安装 Google Chrome
输入以下命令进行安装:

yum -y install google-chrome-stable –nogpgcheck
启动 Google Chrome
在终端中输入以下命令启动 Google Chrome 浏览器:

google-chrome
这样就可以在 CentOS 系统上安装和使用 Google Chrome 浏览器了,输入法安装:https://www.google.cn/intl/zh-CN/inputtools/chrome/index.html。

Windows上的画图工具用来粘贴截图,分析问题,很到位,用来教学应该也是极好的。

Edge浏览器可以下载Proxy SwitchyOmega插件,安装后走http代理,后续直接切换就好了。

VsCode:代码格式化c++时,令大括号不换行
“C_Cpp.clang_format_style”: “{ BasedOnStyle: Chromium, IndentWidth: 4, ColumnLimit: 150, }”,

ps -ef|grep f1mc2l|grep daemon=2| grep -v grep | awk ‘{print $2}’|xargs kill

Edge 安装沉浸式翻译插件

tar -czvf libs.tar.gz -C libs -H . 这样就不包含文件夹

gcc升级

1
2
3
4
5
6
yum -y install centos-release-scl
yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils
scl enable devtoolset-8 bash
echo "source /opt/rh/devtoolset-8/enable" >>/etc/profile
source /etc/profile ## 使配置文件生效
gcc --version ## 查看gcc版本

glibc升级

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$ ldd --version
ldd (GNU libc) 2.17
wget wget http://ftp.gnu.org/gnu/glibc/glibc-2.27.tar.gz
tar xf glibc-2.27.tar.gz
cd glibc-2.27/
mkdir build
cd build/
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make
make install
ldd --version

# 2 大部分时候make之后需要这一步
make之后 make install之前打开新窗口去创建一个软链接不然install的时候会报错
cd /lib64
unlink libm.so.6
ln -s libm-2.23.so libm.so.6

# 3. 下载软件包
wget https://mirrors.aliyun.com/gnu/glibc/glibc-2.31.tar.gz
# 解压
tar -zxvf glibc-2.31.tar.gz
#进入解压后的文件夹glibc-2.31
cd glibc-2.31
# 预编译
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks --disable-werror
# 编译,需要很长时间
make -j4

回退版本

1
2
3
rpm -qa |grep glibc
yum reinstall -y glibc-2.17-326.el7_9.3.x86_64 glibc-headers-2.17-326.el7_9.3.x86_64 glibc-devel-2.17-326.el7_9.3.x86_64 glibc-debuginfo-2.17-307.el7.1.x86_64 glibc-static-2.17-326.el7_9.3.x86_64 glibc-common-2.17-326.el7_9.3.x86_64
sln libm-2.17.so /lib64/libm.so.6

awk sed grep 三剑客
awksedgrep 被称为 Unix/Linux 中的三剑客,是强大的文本处理工具。以下是每个工具的基本用法和一些常见示例:

grep - Global Regular Expression Print

grep 用于搜索文本中的匹配模式,通常用于过滤和查找特定内容。

基本用法

1
grep [OPTIONS] PATTERN [FILE...]

常用选项

  • -i:忽略大小写。
  • -v:反转匹配,显示不包含模式的行。
  • -r:递归搜索目录中的文件。
  • -n:显示匹配的行号。
  • -l:只显示匹配的文件名。

示例

1
2
3
4
grep 'pattern' file.txt           # 查找文件中包含 'pattern' 的行
grep -i 'pattern' file.txt # 忽略大小写查找
grep -v 'pattern' file.txt # 查找不包含 'pattern' 的行
grep -r 'pattern' /path/to/dir # 递归查找目录中的文件

sed - Stream Editor

sed 是一个流编辑器,用于文本替换、删除、插入和修改。

基本用法

1
sed [OPTIONS] 'SCRIPT' [FILE...]

常用选项

  • -n:抑制默认输出,通常与 p 命令配合使用。
  • -i:直接修改文件而不是输出到标准输出。

常见脚本命令

  • s/old/new/:将 old 替换为 new
  • d:删除匹配的行。
  • p:打印匹配的行。

示例

1
2
3
4
sed 's/old/new/g' file.txt         # 将文件中所有 'old' 替换为 'new'
sed -n '/pattern/p' file.txt # 仅打印匹配 'pattern' 的行
sed '3d' file.txt # 删除文件的第 3 行
sed -i 's/old/new/g' file.txt # 直接在文件中进行替换

awk - Aho, Weinberger, and Kernighan

awk 是一个强大的文本处理语言,用于模式匹配和数据操作。

基本用法

1
awk 'PATTERN {ACTION}' [FILE...]

常用功能

  • $0:整行。
  • $1, $2, ...:第 1、2、… 列。
  • FS:字段分隔符(默认为空格或制表符)。
  • NR:当前行号。
  • NF:当前行字段数。

示例

1
2
3
4
awk '{print $1}' file.txt          # 打印文件的第一列
awk -F',' '{print $2}' file.csv # 使用逗号作为分隔符,打印第二列
awk '/pattern/ {print $0}' file.txt # 打印包含 'pattern' 的行
awk '{sum += $1} END {print sum}' file.txt # 计算第一列的总和

综合示例

假设有一个名为 data.txt 的文件,其内容如下:

1
2
3
4
Alice 30
Bob 25
Carol 35
Dave 40

使用 grep

1
2
grep 'Alice' data.txt        # 查找包含 'Alice' 的行
grep -v 'Alice' data.txt # 查找不包含 'Alice' 的行

使用 sed

1
2
sed 's/Alice/Alicia/' data.txt  # 将 'Alice' 替换为 'Alicia'
sed '/Bob/d' data.txt # 删除包含 'Bob' 的行

使用 awk

1
2
3
awk '{print $1}' data.txt            # 打印第一列(名字)
awk '{sum += $2} END {print sum}' data.txt # 计算第二列(年龄)的总和
awk '$2 > 30 {print $1}' data.txt # 打印年龄大于 30 的名字

通过掌握这些基本用法和示例,你可以在文本处理和数据分析中高效地利用 grepsedawk

nephen wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!
坚持原创技术分享,您的支持将鼓励我继续创作!