Linux vim编辑器、shell、gcc工具链等用法2018.11.11

VI

创建vi :vim +文件名

Vim三个模式:插入模式、命令模式、底行模式

插入模式:在此模式下可以输入字符,按ESC将回到命令模式。

命令模式:可以移动光标、删除字符等

底行模式:可以保存文件、退出vi、设置vi、查找等功能(底行模式也可以看作是命令模式里的)。

进入vi时处于命令模式,按a、i即可进入插入模式 

退出vi及保存文件:

在命令行模式下,按一下冒号键进入底行模式 

: w filename  (以指定的文件名filename保存)       

: wq  (存盘并退出vi)  

: q!  (不存盘强制退出vi)

:set nu显示行号

:set nonu取消显示行号

yy复制:nyy(光标往下n行)

p :粘贴剪切板里的内容在光标后

P :粘贴剪切板里的内容在光标前

dd删除:ndd(从光标往下n行)

u:撤销上一步操作

U:撤销对当前的所有操作

:s/old/new :用new替换行中首次出现的old

 :s/old/new/g :用new替换行中所有的old

 :n,m s/old/new/g :用new替换从n到m行里所有的old

:%s/old/new/g :用new替换当前文件里所有的old

/abc 查找abc (n跳到下一个)


Shell的使用基础

什么是shell?

Shell是命令解析器,将用户的输入的指令转化为机器可以运行的程序。

利用vi等文本编辑器编写Shell脚本的格式是固定的,如下:

#!/bin/sh

#comments

Your commands go here

首行中的符号#!告诉系统其后路径所指定的程序即是解释此脚本文件的Shell程序。

编辑完毕,将脚本存盘为filename.sh,文件名后缀sh表明这是一个Bash脚本文件。执行脚本的时候,要先将脚本文件的属性改为可执行的:       

 chmod +x filename.sh(赋予权限)

执行脚本的方法是:./filename.sh

例:

1.

#!/bin/sh

rm -rf /home/*               (删除home目录下所有文件夹)

cd home                       

mkdir 1               

touch 11

mkdir 2

touch 22

mkdir 3

touch 33                       (1文件夹下有文件11,2文件夹下有文件22,3文件夹下有文件33)

2.

#!/bin/sh

str="abc"

if [ $1 == $str ];then         (注意if与[之间要空格、[] 与命令行参数间也要空格 参数与符号间也要空格)

   echo $str

else

   echo $1

fi                                      (结束if语句

3.

#!/bin/sh

for ((i=1;i<100;i++))

do

        touch "test$i"

done                                  (创建99个文件1~99)

4.         

#!/bin/sh

num=2

for ((i=1;i<100;i++))

do

    if [ $((i%num)) -eq 0 ];then                          (%为取余  -eq 等于equal                        框架:for (   )

    mkdir "test$i"                                                                 -lt 小于less than                               do

    fi                                                                                    -gt 大于great than                                   if [  ];then

done                                                                  创建偶数个文件夹2~98                                           else

                                                                                                                                                          fi

                                                                                                                                                    done

5.

#!/bin/sh   

if [ $1 -lt $2 ];then

echo "$1 is smaller than $2"

else

echo "$1 is bigger than $1"                                命令后一定要加空格

fi                                                                          如果参数1比参数2小输出:参数1is smaller than参数2

                                                                           否则输出:参数1 is bigger then 参数2

6.

#!/bin/sh

num=3                                                      框架   while [  ]

i=1                                                                       do

while [ $i -lt 100 ]

do

     if [ $((i%num)) -eq 0 ];then                             done

     echo $i

     fi

let i++                                                       (输出1~100能被三整除的数)    

done

 

gcc工具链

四个步骤:

1.预处理-E                 gcc -E -o hello.i hello.c

2.编译-S                     gcc -S -o hello.s hello.i

3.汇编-c                      gcc -c -o hello.o hello.s

4.链接-o                      gcc -o hello hello.o

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值