每次玩AIX就是一堆堆的东西要查阅
因为本身就是个Linux的生手,这次直接玩小机,更加是雪上加霜了...
本次的主要是修理AIX的Oracle数据库问题,结果发现数据库启动不起来的最大问题就是...磁盘空间满了..
于是学习了一个简单的查看磁盘空间的命令:
df -k
然后一直觉得AIX自带的sh非常非常的不爽,虽然学会了用r重复上一次的命令(很不安全),也学会了用Ctrl+H来删除前一个字符.但是还是让我觉得非常的别扭...
于是下决心去安装一个Bash.
结果得到了方法:
先去这里下载AIX的RPM文件包
然后在上传..
结果在上传的时候就出问题了.因为一直在用Telnet方式远程AIX,没办法用SSH上传..
于是只能改用FTP方式,运行ftp命令之后open,然后binary切换到二进制模式,再get 远程 /本地,最后quit.具体的有个操作指南的帖子,之后再转过来好了.
把bash-3.2-1.aix5.2.ppc.rpm文件下载到本地了之后,运行以下命令:
rpm -ihv bash-3.2-1.aix5.2.ppc.rpm
然后在~下修改.profile的内容
增加一行
export PS1="[\u@\h \W]#"
然后修改/etc/security/login.cfg,在Shells的属性上添加bash
在"shells = "后添加"/bin/bash,"修改之后类似这样:
shells = /bin/bash,/usr/bin/csh,/usr/bin/ksh
然后修改默认的Shell,修改/etc/passwd
就把第一行改成类似:
root:!:0:0::/:/bin/bash
然后重新登陆Shell即可.
不过这其中,一定要涉及到该死的原始版vi的使用,因为不是vim,所以用的极端的痛苦
B或者b是往前一个单词
x或者X是删除一个字符(位置有所不同)
Backspace是在单词中左移
空格可以往右移动
i可以进入插入模式,在光标所在处插入
然后ESC之后:可以进行保存或者别的,这个和vim是差不多的
以上这些是绝对必须知道的,否则根本寸步难行.
一下转贴两个超长的帖子,用作资料:
进入vi的命令
vi filename: 打开或新建文件,并将光标置于第一行首
vi +n filename: 打开文件,并将光标置于第n行首
vi + filename: 打开文件,并将光标置于最后一行首
vi +/pattern filename: 打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename: 在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename: 打开多个文件,依次进行编辑
移动光标类命令
h: 光标左移一个字符
l: 光标右移一个字符
space: 光标右移一个字符
Backspace: 光标左移一个字符
k或Ctrl+p: 光标上移一行
j或Ctrl+n: 光标下移一行
Enter: 光标下移一行
w或W : 光标右移一个字至字首
1G : 到第一行
G : 到最后一行
b或B : 光标左移一个字至字首
e或E : 光标右移一个字至字尾
): 光标移至句尾
(: 光标移至句首
}: 光标移至段落开头
{: 光标移至段落结尾
nG: 光标移至第n行首
n+: 光标下移n行
n-: 光标上移n行
n$: 光标移至第n行尾
H: 光标移至屏幕顶行
M: 光标移至屏幕中间行
L: 光标移至屏幕最后行
0: 光标移至当前行首
$: 光标移至当前行尾
屏幕翻滚类命令
Ctrl+u: 向文件首翻半屏
Ctrl+d: 向文件尾翻半屏
Ctrl+f: 向文件尾翻一屏
Ctrl+b: 向文件首翻一屏
nz: 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i: 在光标前
I: 在当前行首
a: 光标后
A: 在当前行尾
o: 在当前行之下新开一行
O: 在当前行之上新开一行
r: 替换当前字符
R: 替换当前字符及其后的字符,直至按ESC键
s: 从当前光标位置处开始,以输入的文本替代指定数目的字符
S: 删除指定数目的行,并以所输入文本代替之
ncw或nCW: 修改指定数目的字
nCC: 修改指定数目的行
删除命令
ndw或ndW: 删除光标处开始及其后的n-1个字
do: 删至行首
d$: 删至行尾
ndd: 删除当前行及其后n-1行
x或X: 删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u: 删除输入方式下所输入的文本
搜索及替换命令
/pattern: 从光标开始处向文件尾搜索pattern
?pattern: 从光标开始处向文件首搜索pattern
n: 在同一方向重复上一次搜索命令
N: 在反方向上重复上一次搜索命令
:s/p1/p2/g: 将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g: 将文件中所有p1均用p2替换
选项设置
all: 列出所有选项设置情况
term: 设置终端类型
ignorance: 在搜索中忽略大小写
list: 显示制表位(Ctrl+I)和行尾标志($)
number: 显示行号
report: 显示由面向行的命令修改过的数目
terse: 显示简短的警告信息
warn: 在转到别的文件时若没保存当前文件则显示NO write信息
nomagic: 允许在搜索模式中,使用前面不带“\”的特殊字符
nowrapscan: 禁止vi在搜索到达文件两端时,又从另一端开始
mesg: 允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3: 将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d: 将 n1行到n2行之间的内容删除
:w: 保存当前文件
:e filename: 打开文件filename进行编辑
:x: 保存当前文件并退出
:q: 退出vi
:q!: 不保存文件并退出vi
:!command: 执行shell命令command
:n1,n2 w!command: 将文件中n1行至n2行的内容作为command的输入并执行之, 若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command: 将命令command的输出结果放到当前行
寄存器操作
"?nyy: 将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyw: 将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyl: 将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
"?p: 取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字
ndd: 将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中
FTP:文件传输协议。先说说他的功能吧,主要就是从运行FTP服务器的计算机传输文件。可以交互使用。这里要注意,只有安装了tcp/ip协议的机器才能使用ftp命令。
命令格式:ftp [-v][-d][-i][-n][-g][-s:filename][-a][-w:windowsize][computer]
说说他们的含义吧。
-v 不显示远程服务器响应
-n 禁止第一次连接的时候自动登陆
-i 在多个文件传输期间关闭交互提示
-d 允许调试、显示客户机和服务器之间传递的全部ftp命令
-g 不允许使用文件名通配符,文件名通配符的意思是说允许在本地文件以及路径名中使用通配字符
-s:filename 指定包含ftp命令的文本文件。在ftp命令启动后将自动运行这些命令。在加的参数里不能有空格。
-a 绑定数据连接时,使用任何的本地端口
-w:windowsize 忽略默认的4096传输缓冲区
computer 指定要连接的远程计算机的ip地址
呵呵,理解了上面的,就说说一些具体的命令,我个人觉得虽然现在工具用起来很方便了,但懂这些命令在很多地方还是很有用的,就像现在nt下的命令提示符
本次的主要是修理AIX的Oracle数据库问题,结果发现数据库启动不起来的最大问题就是...磁盘空间满了..
于是学习了一个简单的查看磁盘空间的命令:
df -k
然后一直觉得AIX自带的sh非常非常的不爽,虽然学会了用r重复上一次的命令(很不安全),也学会了用Ctrl+H来删除前一个字符.但是还是让我觉得非常的别扭...
于是下决心去安装一个Bash.
结果得到了方法:
先去这里下载AIX的RPM文件包
然后在上传..
结果在上传的时候就出问题了.因为一直在用Telnet方式远程AIX,没办法用SSH上传..
于是只能改用FTP方式,运行ftp命令之后open,然后binary切换到二进制模式,再get 远程 /本地,最后quit.具体的有个操作指南的帖子,之后再转过来好了.
把bash-3.2-1.aix5.2.ppc.rpm文件下载到本地了之后,运行以下命令:
rpm -ihv bash-3.2-1.aix5.2.ppc.rpm
然后在~下修改.profile的内容
增加一行
export PS1="[\u@\h \W]#"
然后修改/etc/security/login.cfg,在Shells的属性上添加bash
在"shells = "后添加"/bin/bash,"修改之后类似这样:
shells = /bin/bash,/usr/bin/csh,/usr/bin/ksh
然后修改默认的Shell,修改/etc/passwd
就把第一行改成类似:
root:!:0:0::/:/bin/bash
然后重新登陆Shell即可.
不过这其中,一定要涉及到该死的原始版vi的使用,因为不是vim,所以用的极端的痛苦
B或者b是往前一个单词
x或者X是删除一个字符(位置有所不同)
Backspace是在单词中左移
空格可以往右移动
i可以进入插入模式,在光标所在处插入
然后ESC之后:可以进行保存或者别的,这个和vim是差不多的
以上这些是绝对必须知道的,否则根本寸步难行.
一下转贴两个超长的帖子,用作资料:
AIX下的VI命令
进入vi的命令
vi filename: 打开或新建文件,并将光标置于第一行首
vi +n filename: 打开文件,并将光标置于第n行首
vi + filename: 打开文件,并将光标置于最后一行首
vi +/pattern filename: 打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename: 在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename: 打开多个文件,依次进行编辑
移动光标类命令
h: 光标左移一个字符
l: 光标右移一个字符
space: 光标右移一个字符
Backspace: 光标左移一个字符
k或Ctrl+p: 光标上移一行
j或Ctrl+n: 光标下移一行
Enter: 光标下移一行
w或W : 光标右移一个字至字首
1G : 到第一行
G : 到最后一行
b或B : 光标左移一个字至字首
e或E : 光标右移一个字至字尾
): 光标移至句尾
(: 光标移至句首
}: 光标移至段落开头
{: 光标移至段落结尾
nG: 光标移至第n行首
n+: 光标下移n行
n-: 光标上移n行
n$: 光标移至第n行尾
H: 光标移至屏幕顶行
M: 光标移至屏幕中间行
L: 光标移至屏幕最后行
0: 光标移至当前行首
$: 光标移至当前行尾
屏幕翻滚类命令
Ctrl+u: 向文件首翻半屏
Ctrl+d: 向文件尾翻半屏
Ctrl+f: 向文件尾翻一屏
Ctrl+b: 向文件首翻一屏
nz: 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i: 在光标前
I: 在当前行首
a: 光标后
A: 在当前行尾
o: 在当前行之下新开一行
O: 在当前行之上新开一行
r: 替换当前字符
R: 替换当前字符及其后的字符,直至按ESC键
s: 从当前光标位置处开始,以输入的文本替代指定数目的字符
S: 删除指定数目的行,并以所输入文本代替之
ncw或nCW: 修改指定数目的字
nCC: 修改指定数目的行
删除命令
ndw或ndW: 删除光标处开始及其后的n-1个字
do: 删至行首
d$: 删至行尾
ndd: 删除当前行及其后n-1行
x或X: 删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u: 删除输入方式下所输入的文本
搜索及替换命令
/pattern: 从光标开始处向文件尾搜索pattern
?pattern: 从光标开始处向文件首搜索pattern
n: 在同一方向重复上一次搜索命令
N: 在反方向上重复上一次搜索命令
:s/p1/p2/g: 将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g: 将文件中所有p1均用p2替换
选项设置
all: 列出所有选项设置情况
term: 设置终端类型
ignorance: 在搜索中忽略大小写
list: 显示制表位(Ctrl+I)和行尾标志($)
number: 显示行号
report: 显示由面向行的命令修改过的数目
terse: 显示简短的警告信息
warn: 在转到别的文件时若没保存当前文件则显示NO write信息
nomagic: 允许在搜索模式中,使用前面不带“\”的特殊字符
nowrapscan: 禁止vi在搜索到达文件两端时,又从另一端开始
mesg: 允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3: 将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d: 将 n1行到n2行之间的内容删除
:w: 保存当前文件
:e filename: 打开文件filename进行编辑
:x: 保存当前文件并退出
:q: 退出vi
:q!: 不保存文件并退出vi
:!command: 执行shell命令command
:n1,n2 w!command: 将文件中n1行至n2行的内容作为command的输入并执行之, 若不指定n1,n2,则表示将整个文件内容作为command的输入
:r!command: 将命令command的输出结果放到当前行
寄存器操作
"?nyy: 将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyw: 将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字
"?nyl: 将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字
"?p: 取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字
ndd: 将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中
FTP命令
FTP:文件传输协议。先说说他的功能吧,主要就是从运行FTP服务器的计算机传输文件。可以交互使用。这里要注意,只有安装了tcp/ip协议的机器才能使用ftp命令。
命令格式:ftp [-v][-d][-i][-n][-g][-s:filename][-a][-w:windowsize][computer]
说说他们的含义吧。
-v 不显示远程服务器响应
-n 禁止第一次连接的时候自动登陆
-i 在多个文件传输期间关闭交互提示
-d 允许调试、显示客户机和服务器之间传递的全部ftp命令
-g 不允许使用文件名通配符,文件名通配符的意思是说允许在本地文件以及路径名中使用通配字符
-s:filename 指定包含ftp命令的文本文件。在ftp命令启动后将自动运行这些命令。在加的参数里不能有空格。
-a 绑定数据连接时,使用任何的本地端口
-w:windowsize 忽略默认的4096传输缓冲区
computer 指定要连接的远程计算机的ip地址
呵呵,理解了上面的,就说说一些具体的命令,我个人觉得虽然现在工具用起来很方便了,但懂这些命令在很多地方还是很有用的,就像现在nt下的命令提示符
- ?
- append
- ascii
- bell
- binary
- bye
- cd
- close
- dir
- debug
- disconnnect
- get
- glob
- hash
- help
- !
- lcd
- literal
- ls
- mdelete
- mdir
- mget
- mkdir
- mls
- mput
- open
- prompt
- put
- pwd
- quit
- quote
- recv
- remotehelp
- rename
- rmdir
- send
- status
- trace
- type
- user
- verbose
说明:显示ftp命令的说明。后面可以加参数,是加需要解释的命令名,不加则显示包含所有命令列表。
说明:使用当前文件类型设置,将本地文件附加到远程计算机中。大概格式是
append local-file [remote-file] 其中local-file是说指定要添加的本地文件。
remote-file是说指定要将local-file附加到远程计算机文件,要是省了这个,则是使用本地文件名做远程文件名。
说明:默认情况下,将文件传输类型设置为ASCII
说明:响玲开关,意思是文件传输完成后是否有玲声提醒。默认是关闭的。
说明:将文件传输类型设置为二进制。
说明:结束和远程计算机的ftp会话,也就是安全断开,退出ftp.
说明:更改远程计算机上的工作目录。如cd data 其中data是要进入的远程计算机的目录。
说明:结束与远程服务器的ftp会话,并返回命令解释程序。
说明:显示远程的文件以及子目录列表。如dir data local-file
其中data是指定要查看列表的目录,没指定的话就是当前目录。local-file是指定要保存列表的本地文件,不指定的话就在屏幕输出。
说明:调试开关,打开的时候打印每个发送到远程计算机的命令,命令前有——>
默认情况是关闭的。
说明:与远程计算机断开连接,但还保持着ftp命令提示符。
说明:使用当前文件传输类型,把远程的文件拷贝到本地计算机上。
如get remote-file local-file
remote-file是指定要复制的文件,local-file是指定本地计算机上的文件名,
没有指定的话则个remote-file同名。
说明:文件名通配开关
说明:转换每个传输数据快的散列标记打印(#).数据快的大小是2048字节。默认情况下是关闭的,
说明:显示ftp命令的解释,如help commmand 其中command就是你要解释的命令,如果不加command这个参数的话就会显示所有命令的列表
说明:这个命令差点忘记了功能是在本地计算机上运行指定命令。如! command 其中command就是你要运行的命令,如果不加command这个参数的话,则显示本地命令提示, 这时你输入exit命令就能返回到ftp了。
说明:更改本地计算机的本地目录,在默认的时候是启动ftp的目录.这个不要觉得没用啊,在你使用ftp的时候为了传递文件不是常改变本地和远程计算机的目录吗?
如lcd [directory] 其中[directory]是指定要进入的本地计算机的目录,如果你不加这个参数,就会显示出本地计算机的工作目录.
说明:向远程ftp服务器发送协商参数,报告.
如lireral argument [...] 其中argument是指定要发送给远程服务器的协商参数。
说明:显示远程目录的文件和字目录.
如ls remote-directory local-file
其中remote-directory是指要查看的列表的目录,不指定的话显示的是当前工作目录。local-file是指定要保存列表的本地文件.不指定的话是在屏幕上输出.
说明:删除远程计算机上的文件.如mdelete remote-file ...
remote-file肯定是要删的文件啊,可以删除多个.
说明:显示远程目录的文件和子目录列表,他允许指定多个文件.
如mdir remote-file ... local-file
参数我想大家应该明白什么意思吧?不明白就看看前面的类似命令吧.
说明:使用当前文件传输类型将多个远程文件复制到本地计算机.
如mget remote-files ...
其实remote-files可以指定多个,他就是指定要复制到本地计算机的远程文件.
说明:创建远程目录.
如mkdir directory 这个命令和nt下的命令提示符中的md directory一样,不多说了.
说明:显示远程目录的文件和目录简表
如mls remote-file ... local-file
其中remote-file这个参数是必须要加的,’’-’’是使用远程计算机的当前工作目录.
说明:使用当前文件传输类型,将本地文件复制到远程计算机.
如mput local-files ...
说明:连接到指定ftp服务器上,
如open computer port 其中computer一般是远程计算机的ip地址,port不用说就是指定端口了。
说明:转换提示,在多个文件传输的时候,ftp提示可以有选择的检索或保存文件,如果关闭提示,则mget和mput命令传输所有文件,在默认情况下是打开的.
说明:使用当前文件传输类型将本地文件复制到远程计算机中,
如put local-file remote-file
其中local-file是指定要复制的本地文件,
remote-file是指定要复制的远程计算机上的文件名,不指定的话是和本地计算机上的文件名同名.
说明:显示远程呢感计算机上的当前目录.
说明:结束与远程计算机的ftp会话,并退出ftp.
说明:向远程ftp服务器发送协议,报告.期待ftp单码应答,这个命令的功能和literal相同.
说明:使用当前文件传输类型将远程文件复制到本地计算机,他与get命令作用相同。
说明:显示远程命令的帮助.这个命令的用法和help,!一样可以参考他的用法.
说明:更改远程计算机上的文件名。
这个命令和nt的命令提示符的ren一样,如rename filename newfilename
说明:删除远程目录.
这个命令和nt的命令提示符的rm一样,如rmdir directory
说明:使用当前文件传输类型将本地文件复制到远程计算机.send和put命令的功能一样。
如send local-file remote-file
说明:显示ftp连接和转换的当前状态
说明:转换报文跟踪,运行ftp的命令时,trace将显示没个报文的理由。
说明:设置或显示文件传输类型.
如type [type-name]
其中type-name 的意思是文件传输的类型,默认是ASCII,没加这个参数就是显示当前的传输类型.
说明:指定连接到远程计算机的用户.
如user user-name [passwd] [account]
其中user-name不用说都是用来登陆计算机的用户名了,
passwd是指定user-name的密码,不指定的话ftp会提示输入密码。
account是指定用来登陆计算机的帐号,如不指定,ftp会提示输入帐号.
说明:转换冗余模式。这里如果打开,会显示所有ftp响应,文件传输结束的时候会显示传输的效率和统计信息,默认的情况是打开的.
评论
发表评论