vim/shell/makefile

来源:互联网 发布:效能时间软件 编辑:程序博客网 时间:2024/04/28 11:29
在进入源代码的学习前,我们先来磨刀,学习使用vim,shell,make来提高工作的效率。


一.vim:
1.:help command .
2.使用 h、j、k、l.      例如:10h,5j,
3.光标移动motion:
fx:移动光标到当前行的下一个 x 处。很明显,x 可以是任意一个字母,
   而且你可以使用 ; 来重复你的上一个 f 命令。
tx:和上面的命令类似,但是是移动到 x 的左边一个位置。(这真的很有用)
Fx:和 fx 类似,不过是往回找。
w:光标往前移动一个词。
b:光标往后移动一个词。
0:移动光标到当前行首。
^:移动光标到当前行的第一个字母位置。
$:移动光标到行尾。
):移动光标到下一个句子。
( :移动光标到上一个句子。
4.在文件里面移动的命令:
Ctrl-f:向下移动一屏。
Ctrl-b:向上移动一屏。
G:到文件尾
numG:移动光标到指定的行(num)。(比如 10G 就是到第 10 行)
gg:到文件首
H:移动光标到屏幕上面
M:移动光标到屏幕中间
L:移动光标到屏幕下面
*:读取光标处的字符串,并且移动光标到它再次出现的地方。
#:和上面的类似,但是是往反方向寻找。
/text:从当前光标处开始搜索字符串 text,并且到达 text 出现的地方。
必须使用回车来开始这个搜索命令。如果想重复上次的搜索的话,按 n。
?text:和上面类似,但是是反方向。
ma:在当前光标的位置标记一个书签,名字为 a。书签名只能是小写字母。
你看不见书签的存在,但它确实已经在那里了。
`a:到书签 a 处。注意这个不是单引号,它一般位于大部分键盘的 1 的左边。
`.:到你上次编辑文件的地方。这个命令很有用,而且你不用自己去标记它。
5.输入:
i:在当前字符的左边插入
I:在当前行首插入
a:在当前字符的右边插入
A:在当前行尾插入
o:在当前行下面插入一个新行
O:在当前行上面插入一个新行
c{motion}:删除 motion 命令跨过的字符,并且进入插入模式。比如:c$,
  这将会删除从光标位置到行尾的字符并且进入插入模式。ct!,
  这会删除从光标位置到下一个叹号(但不包括),
  然后进入插入模式。被删除的字符被存在了剪贴板里面,并且可以再粘贴出来。
d{motion}:和上面差不多,但是不进入插入模式。
6.下面是vim复制粘贴的基本命令:
yy:复制游标所在行整行。或大写一个Y。 
2yy或y2y:复制两行。 
y^:复制至行首,或y0。不含游标所在处字元。 
y$:复制至行尾。含游标所在处字元。 
yw:复制一个word。 
y2w:复制两个字(单词)。 
yG:复制至档尾。 
y1G:复制至档首。 
p:小写p代表贴至游标后(下)。 
P:大写P代表贴至游标前(上)。
        7.游戏练习:
vim  practicevim           ;打开或者新建practicevim
:set nu ;显示行号
:help command ;显示help文件
:q ;退出help文件
i   ;输入1.hjkl
i   ;输入000000000000000000
yy ;复制行000000000000000000
p ;粘贴行
dd
       h  j  k  l ;通过hjkl和iIaAoO分别输入几个hjkl 
8G ;跳到特定行
G ;到文件尾
a                               ;输入aaaaaaaaaaaaaaaaabbbbbbbbbbbbbb
fb ;移到b
Fa ;移到a
tb ;移到b
gg ;到文件首
w ;光标往前移动一个词
b ;光标往后移动一个词
0 ;行首
gg ;到文件首
yG ;复制到文件尾
p ;粘贴
ctrl+shift+c和ctrl+shift+p和ctrl+shift+x是终端下的复制粘贴和剪切命令
二.shell:这部分不做解说了,只建立一个.sh文件,把几个知识点的例子添加到文件。
sh  shelltext.sh
ls -l
cat shelltext.sh
ls -all
cd ~/androidsrc2.3.5_r1
pwd
ls -l
cd .
pwd
ls
chmod u+x shelltext.sh
ls -l
echo "This is for study_android_source."
echo "Thank you for watching."
echo "This is script name : $0"
echo "This is parameter 1: $1"
echo "This is parameter 2: $2"
echo "./shelltext a b  $1=a ,$2=b"
echo "show parm number : $#"
echo "show parm list :   $*"
echo "show process id:   $$"
echo "show precomm stat: $?"
echo -e "this echo's 3 newlne\n\n\n"
echo "OK"
echo -n "first name:"
read firstname
echo -n "last name:"
read lastname
echo "this name is $firstname $lastname"
if [ "10" -lt "12" ];then
#yes 10 is less than 12
echo "yes,10 is less than 12"
else
echo "no"
fi


echo "Enter your filename:"
read myfile
if [ -e $myfile ]
then
  if [ -s $myfile ];then
   echo "$myfile exist and size greater than zero"
  else
   echo "$myfile exist but size is zero"
  fi
else
echo "file no exist"
fi


echo -n "enter a number from 1 to 3:"
read ans
case $ans in
1)
echo "you select 1"
;;
2)
echo "you select 2"
;;
3)
echo "you select 3"
;;
*)
echo "`basename $0`:this is not between 1 and 3">&2
exit;
;;
esac


for loop in 1 2 3 4 5
do
echo $loop
done




echo "find ./ for 1 days "
find ./ -mtime +1


三.makefile:
请参考:http://blog.csdn.net/haoel/article/details/2886
0 0
原创粉丝点击