工具杂记

声明:仅仅作为一些记录用 ,没有任何技术含量,后面会陆陆续续补充

 

# 一些命令

echo $?   // 打印程序的终止状态

  gcc hello.c

  ./a.out

   echo $?

   显示:0

whereis gcc/g++  // 查找安装目录

which vim  // 查看vim可执行文件所在的目录

netstat -nltp    // 查看开启的端口

wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

source /etc/profile   // 使修改的配置文件生效

showkey -a  // 显示打印的字符

rm -rf !(centos8-repo.zip)   // 删除所有文件  但是除掉 centos8-repo.zip不删

bash <(curl -L https://xxx.com/install-release.sh)   // 执行远程脚本

 

# gcc编译选项

gcc -std=c99 -Wall -m64 -lpthread hello.c

  -std=c99  启用gcc的1999ISO C扩展

   -Wall 使编译器所推荐的警告信息都起作用

   -m64 编译64位程序

   -lpthread  连接 pthread库,这样就可以使用  pthread_mutex_t 等

   -include 一般在源码里包含了,很少使用

   -I 指定头文件目录   /usr/include 不需要指定    相对路径  -I.

 

#查看Windows端口占用

.) netstat -nao

  协议    本地地址                     外部地址               状态                   PID

  TCP    127.0.0.1:1434         0.0.0.0:0              LISTENING       3236
  TCP    127.0.0.1:5679         0.0.0.0:0              LISTENING       4168
  TCP    127.0.0.1:7438         0.0.0.0:0              LISTENING       4168
  TCP    127.0.0.1:8015         0.0.0.0:0              LISTENING       1456

 

.) 查看指定端口的占用情况

. netstat -nao | findstr "9050"

  协议    本地地址                     外部地址               状态                   PID

  TCP    127.0.0.1:9050         0.0.0.0:0              LISTENING       2016

 

.) 查看PID对应的进程

tasklist | findstr "2016"

 

#gcc和g++的区别

http://blog.chinaunix.net/uid-23023613-id-88201.html

g++  == gcc -lstdc++

g++ 会把编译文件当作 c++文件

gcc: 如果.cpp 结尾当成c++成文件, .c结尾当成c文件

查看汇编:   g++ -S xxx.cpp   ==   gcc -S xxx.cpp

                  less me.s

 

#g++/gcc连接路径

库放在   /usr/lib    /lib    /usr/local/lib 里的库  用  -l就能连接了    /usr/include 不需要指定头文件目录(-I /myincludedir)

   如果不在上面的三个目录用 -L/usr/xxx/yyy/lib  或者 -L /usr/xxx/yyy/lib

大部分libxxx.so只是一个链接

   比如:libm.so 连接到 /lib/libm.so.x 又连接到  /lib/libm-2.3.2.so

   做一个连接:    ln -s  libxxx-x.x.x.so  libxxx.so(目标)

手工写链接参数麻烦:

   进入  /usr/bin目录    找到  xxx-config  执行   xxx-config --libs  (s应该是string的意思)   就会出现连接字符串(连接库)

      例如     gtk-config --libs   输出: "-L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm"

      这就是gtk连接参数

   同理   xxx-config --cflags   (s应该是string的意思)    导出包含include目录 的 字符串

   gcc gtktest.c `gtk-config --libs --cflags`    不需要复制粘贴 连接库和include库  字符串   直接执行 shell

 

#编译链接示例

g++ curltest.cpp -o curltest -L/mnt/hgfs/windows/curl-7.19.5/lib/.libs -lcurl -I/mnt/hgfs/windows/curl-7.19.5/include

 

# 账号相关的信息

/etc/passwd    存储所有的账号相关信息

/etc/shadow    存储账号对应的个人密码

/etc/group       存储所有的组相关的信息

 

# Windows的当前用户目录

%userprofile%

#Visual Studio 2019 操作

Alt+w+w :   定位打开的文件

Shift + < / >   :  选定一个区域  左右移动

 

# md  Windows Dos环境下创建目录

 

# ulimit -a

其中  stack size     kbytes     8192   表示堆栈大小

如果第一行 core file size   大小为0      表示不允许产生 core文件

 

#Windows杀死已经开启的进程

::杀死当前已开启的进程
taskkill -f -t -im CenterServer.exe

 

#diff

diff 1.txt 2.txt -u

 

#Windows漂亮控制台

conemu   

   GitExtension自带

 

#vim配置

默认配置在  /etc/vimrc

   优先用  ~/.vimrc   你管理好这个就行了

 

#vim命令

: help  查看帮助

:敲字符后   不停的tab可以帮你补全命令

:s  执行替换 

命令模式的进入:     / ? :  $(后面时shell命令) 输入命令   然后按Enter  才算完成

可视模式:   v

可视模式(visual) 和 选择模式(select的切换) :  ctrl+g

如果你在编辑时有几秒的停顿,需要立马esc回到  正常模式

set ft?<CR>     查看文件类型

<CR> 也是下走一行

set ts=4

set nu

"    // vimrc的注释

0   // 行首

$   // 行尾

^   // 行首第一个空白字符

( 和 )  // 移到上一句和下一句

{ 和 }  // 移到上一段和下一段

f(find)  // 找到下一个紧接着输入的字符

t(till)  // 找到下一个紧接着输入的字符 不包含该字符

d 加动作来进行删除(dd 删除整行);D 则相当于 d$,删除到行尾。

c 加动作来进行修改(cc 修改整行);C 则相当于 c$,删除到行尾然后进入插入模式。

s 相当于 cl,删除一个字符然后进入插入模式;S 相当于 cc,替换整行的内容。

i 在当前字符前面进入插入模式;I 则相当于 ^i,把光标移到行首非空白字符上然后进入插入模式。

a 在当前字符后面进入插入模式;A 相当于 $a,把光标移到行尾然后进入插入模式。

o 在当前行下方插入一个新行,然后在这行进入插入模式;O 在当前行上方插入一个新行,然后在这行进入插入模式。

r 替换光标下的字符;R 则进入替换模式,每次按键(直到 )替换一个字符

u 撤销最近的一个修改动作;U 撤销当前行上的所有修改。

‘diw’(理解为 delete inside word)    删除一个单词

例句:if (message == "sesame open")     // 光标在粉红色的a上

   di"      if (message == "")      // 删除  “"  之间的

   di( 或 di)     // 删除 ()之间的      // da(   类似,只是把()也删了

c2i{     删除并插入 到外层的第二个  {

 

#Windows Vim设置

为了避免和  resharper的  refactor  重命名(Ctrl+R+R)的冲突    长按Esc可以取消Visual状态

 

#Windows关闭代理后连不上网了

Win10:   所有设置-》网络和Internet-》左下角“代理”

  

#Centos8如何优雅的运行一个Deamon

   nohup COMMAND >/dev/null 2>&1 &

   http://wsfdl.com/linux/2015/10/18/%E5%A6%82%E4%BD%95%E4%BC%98%E9%9B%85%E7%9A%84%E8%BF%90%E8%A1%8C%E4%B8%80%E4%B8%AAdaemon.html

 

#查看Linux相关版本号

cat /etc/redhat-release

   输出: CentOS Linux release 8.2.2004 (Core) 

uname -r

   输出: 4.18.0-193.14.2.el8_2.x86_64

uname -a 

   输出: Linux iZuf6a8oj5mrgy7u3bvqfeZ 4.18.0-193.14.2.el8_2.x86_64 #1 SMP Sun Jul 26 03:54:29 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

cat /proc/version

   输出: Linux version 4.18.0-193.14.2.el8_2.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC)) #1 SMP Sun Jul 26 03:54:29 UTC 2020

 

#yum源

cd /etc/yum.repos.d

 

#yum命令 

yum list installed | vim

yum info httpd

yum remove -y "httpd*"

yum list  xxx   // 查看源上  xxx真正的名称

yum search xxx

 

#dnf命令

dnf install epel-release

dnf update epel-release

dnf clean all

dnf makecache

dnf list  xxx   // 查看源上  xxx真正的名称

 

#启动Apache

systemctl start httpd

systemctl enable httpd

systemctl status httpd

 

#Centos8安装WordPress

https://www.cnblogs.com/mrfangd/p/LNMP-CentOS8-1.html

https://www.cnblogs.com/mrfangd/p/LNMP-CentOS8-2.html

https://www.cnblogs.com/mrfangd/p/LNMP-CentOS8-3.html

   Note:  安装了最新的nginx  sudo vim /etc/yum.repos.d/nginx.repo

              下面两个安装了:

                    #sudo rpm -Uvh https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-8.rpm # 安装remi源

                    sudo dnf install php-filter php-iconv php-simplexml php-xmlreader php-zlib php-pecl-imagick # 推荐安装的组件     注:php-pecl-imagick安装失败

 

#Centos8软件安装工具

whereis dnf    // 更新

   https://www.cnblogs.com/architectforest/p/12691304.html

   dnf install epel-release     // 更新的源  

   dnf update epel-release

   #sudo rpm -Uvh https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-8.rpm    // 安装remi源

whereis yum

wget http://mirrors.aliyun.com/repo/Centos-8.repo     // 获取阿里云的  源

 

#阿里云安装软件

1. 更改WordPress密码

   update wp_users set user_pass=md5("123456") where user_login='admin';

   安装WordPress  参照:  #Centos8安装WordPress

2. 安装墙

  https://github.com/v2fly/fhs-install-v2ray
      // 安裝執行檔和 .dat 資料檔
      # bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh)

      执行完后:  systemctl enable v2ray; systemctl start v2ray

3.

   yum -y install gcc-c++

   yum -y install lrzsz

4. 安装gcc

yum install gcc

   如果是 阿里云 一开始只装了gcc的c语言编译链接器,需要补充安装c++,用  yum install gcc-c++

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值