tshizuku03の日記

主にoracleやLinuxコマンドについての記事を載せていきたいと思っています。

Ciscoコマンド

バージョン情報を取得するコマンド

 # terminal length 0

terminal length は、何行ずつ表示させるか定義するコマンドです。例えば、
10行ずつ出力結果を表示させたい場合、terminal length 10 と入力します。
terminal length 0 と入力すれば出力結果の全てを表示するので、出力中の
「 --More-- 」 を表示させないようにできるので、ログ取得の際に便利です。

www.infraexpert.com

パーティションテーブル

大規模テーブルの管理作業をパーティションパーティションの導入で
容易にすることが可能です
・検索スピード検索スピードの向上
・メンテナンス作業の向上
・可用性の向上

CREATE TABLE interval_sales
( prod_id NUMBER(6)
, cust_id NUMBER
, time_id DATE
, channel_id CHAR(1)
, promo_id NUMBER(6)
, quantity_sold NUMBER(3)
, amount_sold NUMBER(10,2)
)
PARTITION BY RANGE (time_id)
INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
STORE IN(USER01,USER02,USER03,USER04)
( PARTITION p0 VALUES LESS THAN (TO_DATE('1-1-2016', 'DD-MM-YYYY')),
PARTITION p1 VALUES LESS THAN (TO_DATE('1-2-2016', 'DD-MM-YYYY')),
PARTITION p2 VALUES LESS THAN (TO_DATE('1-3-2016', 'DD-MM-YYYY')) ); 

 マニュアル:

パーティションの作成

オプションのSTORE IN句を使用して1つ以上の表領域を指定できます。この表領域には、データベースが、後から作成される時間隔パーティションのために、ラウンドロビンアルゴリズムを使用して時間隔パーティション・データを格納できます。

ダイレクトロードインサート

別表から大量データをINSERTする場合、APPENDヒントを利用することで、
通常のINSERT処理ではなく、ダイレクトロードインサート処理を実行できます。
このダイレクトロードインサート処理では、バッファ・キャッシュを経由せずにデータを
INSERTすることができ、また最低限のREDO情報のみが生成されるため、通常のINSERT処理よりも
大きくパフォーマンスを改善できる可能性があります。

※注意点
1.ハイ・ウォーター・マーク(HWM)以降のブロックにINSERTされる
→通常のINSERT処理であれば、空ブロックにデータをINSERTすることが可能ですが、
ダイレクトインサートは、HWM以降のブロックにデータがINSERTされる。

2.表単位のロックが獲得される
→通常のINSERT処理はレコード単位でロックが獲得されますが、ダイレクトロードインサート処理では
表単位でロックが獲得されます。

3.ダイレクトロードインサート処理後、トランザクションを完了する必要がある
ダイレクトロードインサート処理の実行直後は、必ずトランザクションを完了させる(COMMIT・ROLLBACK)必要がある

 

基本コマンドとファイル操作4

**tac コマンド
ファイルの内容を最後の行から表示します。

**tee コマンド
標準入力から読み込んだデータを標準出力とファイルの両方に出力します。
実行例
[root@node001 ~]# nl test1.txt | tee test2.txt | head -2
1 aaa
2 bbb
[root@node001 ~]# cat test2.txt
1 aaa
2 bbb
3 ccc
4 ddd


**コマンドを連続実行する「;」「&&」「||」
構文
例1)コマンド1、コマンド2を順々に実行する
$コマンド1;コマンド2
例2)コマンド1が実行できれば、コマンド2を実行する
$コマンド1 && コマンド2
例3)コマンド1が実行できなければ、コマンド2を実行する
$コマンド1 || コマンド2

**grep コマンド
テキストデータないの文字列検索を行う。
構文

>-vパターンに一致しない行を表示する

-n行番号を表示する-lパターンと一致するファイル名を表示-i大文字と小文字を区別しないで検索を行う

 構文
$grep [オプション]検索する文字列パターン[ファイル名]...n

主なオプション説明
-v パターンに一致しない行を表示する
-n 行番号を表示する
-l パターンと一致するファイル名を表示
-i 大文字と小文字を区別しないで検索を行う

実行例

[root@node001 ~]# grep -n aaa test1.txt
1:aaa
[root@node001 ~]# cat test1.txt | grep -i aaa
aaa
[root@node001 ~]# cat test1.txt | grep -l aaa
(標準入力)
[root@node001 ~]# cat test1.txt | grep -v aaa
bbb
ccc
ddd

fff

ppp

[root@node001 ~]# #grep -l[一致するファイル名表示] [ファイル名]
[root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
fff
[root@node001 ~]# grep -l "aaa" *
mylist.txt
test1.txt
test2.txt

 

[root@node001 ~]# find [検索ディレクトリ][ファイル名検索]

[root@node001 ~]# find . -name "test1*.txt"
./test1.txt
./test/test1.txt

 

 **tail [オプション]ファイル名...n

主なオプション説明
-n 行数を数字で指定、末尾のn行部分を表示
-f ファイルの内容が増え続けているものと家庭し、常にファイルの最終部分を読み続けようとする

 

**tr コマンド
標準入力であるキーボードから入力した文字を指定したフォーマットに変換して、
標準出力であるディスプレイに表示することができます。
構文
tr [オプション][文字群1 [文字群2]]

主なオプション説明
-d 文字群1で合致した文字を削除する
-s 文字群1で合致した文字の繰り替えしを1文字に置き換える

 実行例

 [root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
[root@node001 ~]# tr a-z A-Z < test1.txt
AAA
BBB
CCC
DDD

 **tr コマンド
標準入力であるキーボードから入力した文字を指定したフォーマットに変換して、
標準出力であるディスプレイに表示することができます。
構文

tr [オプション][文字群1 [文字群2]]

主なオプション説明
-d 文字群1で合致した文字を削除する
-s 文字群1で合致した文字の繰り替えしを1文字に置き換える

実行例

[root@node001 ~]# cat test1.txt
aaa
bbb
ccc
ddd
[root@node001 ~]# tr a-z A-Z < test1.txt
AAA
BBB
CCC
DDD

**set コマンド
構文
set[オプション][編集コマンド][ファイル名]

主なオプション説明
-i 編集結果を直接ファイルに書き込む
-s/パターン/置換文字列 ファイル各行を対象に、最初にパターンに合致する文字列を置換文字列に変換
-s/パターン/置換文字列/g ファイル内全体を対象に、パターンに合致する文字列を置換文字列に変換
d パターンに合致する行を削除
p パターンに合致する行を表示

 実行例

[root@node001 ~]# sed 's/aaa/AAA/g' test1.txt
AAA
bbb
ccc
ddd
fff
ppp
AAA
[root@node001 ~]# sed -n '/aaa/p' test1.txt
aaa
aaa
[root@node001 ~]# sed '1d' test1.txt
bbb
ccc
ddd
fff
ppp
aaa
 

**wc コマンド
ファイル内のバイト数、単語数、行数を表示するにはwcコマンドを使用します。
構文

wc [オプション][ファイル名]

<table class="table2" border="1">
<tbody>
<tr>
<th><span style="color: #ff0000;">主なオプション</span></th>
<th><span style="color: #ff0000;">説明</span></th>
<tr>
<td>-c</td>
<td>バイト数だけ出力する</td>
</tr>
<tr>
<td>-l</td>
<td>行数だけを出力する</td>
</tr>
<tr>
<td>-w</td>
<td>単語数だけ出力する</td>
</tr>
</tbody>
</table>

 実行例

[root@node001 ~]# wc -l test1.txt
8 test1.txt
[root@node001 ~]# wc -c test1.txt
29 test1.txt
[root@node001 ~]# wc -w test1.txt
7 test1.txt

 **expand コマンド
引数で指定されたファイル内にあるタブをスペースに変換する場合に使用します。
構文
expand [オプション][ファイル名]

主なオプション説明
-i 行頭のタブのみスペースへ変換する
-t 置き換え桁数を指定する

基本コマンドとファイル操作3_ファイル記述子

**file コマンド
ファイルの種類を調べるコマンド

[root@node001 ~]# file test1.txt
test1.txt: ASCII text ###文字コード『ASCII』のテキストファイ
[root@node001 ~]# file test
test: directory     ###ディレクトリ

 

**ファイル記述子
・0番:標準入力
・1番:標準出力
・2番:標準エラー


構文
例1)カレントディレクトリのファイルリストをfile1に格納する
$ls > file1

例2)1>を使用してファイルリストをfile2に格納する(例1と同様)
$ls 1 > file2

例3)file1に、/binのファイルリストを追記して保存する
$ls /bin >> file1

例4)lsコマンドを実行してエラーが出力された場合のみfile3ファイルに格納する
$ls 存在しないファイル 存在するファイル 2 > file3

例5)標準出力、標準エラーの両方をbothファイルに格納する
$ls 存在しないファイル 存在するファイル & > both
以下でも同様の結果を得られる
$ls 存在しないファイル 存在するファイル > & both
$ls 存在しないファイル 存在するファイル 1 > both 2 > &1

 

例6)コマンド1を実行した結果の標準出力、標準エラー出力の両方をbothファイルに格納する
$コマンド1 & > both
以下でも同様の結果を得られる
$コマンド1 > & both

 

例7)file1の内容を標準入力からコマンド1に取り込む
$コマンド1 < file1

 

例8)file1の内容を標準入力からコマンド1に取り込み、コマンド1の標準出力を
コマンド1の標準入力に渡してさらにデータを加工することができます。
$コマンド1 < file1 | コマンド2
実行例

[root@node001 ~]# cat test1.txt
aaa
bbb
ccc
[root@node001 ~]# cat test1.txt | head -2
aaa
bbb
[root@node001 ~]#

 

**dev/null ファイルは特殊なデバイスファイルです。
このファイルに書かれたものは全て消去され、このファイルを読み込むと常に
EOF(End Of File)が帰ります。
実行例
$コマンド > /dev/null 2 > &1
標準出力先を/dev/null とする。標準エラー出力先は、現在の標準出力先(/dev/null)とする

基本コマンドとファイル操作2

LPIC101を勉強しようと思う。基本コマンドとファイル操作第2弾

 

** su コマンド
一時的にアカウントを別のユーザのものに切り替える

** sudo コマンド
事前に管理者から許可されている管理用コマンドを実行する

 

** mv コマンド
ファイルやディレクトリの移動にはmvコマンドを使用します。
mvコマンドの最後の引数に指定されたディレクトリに移動元のファイル(またディレクトリ)が同じ名前で移動します。
構文
mv[オプション]移動元ファイル名...n ディレクトリ名
mv[オプション]移動元ディレクトリ名...n ディレクトリ名

主なオプション説明
-i 移動先に同名ファイルが存在する場合、上書きするか確認する
-f 移動先に同名ファイルが存在しても、強制的に上書きする

 

**ワイルドカード:ファイル名とパターン照合

記号説明
? 任意の一文字
* 0文字以上の文字列
[...] []内に含まれる任意の一文字
[!...] []内に含まれない任意の一文字
説明
file.? file.o、file.aが一致
[abc] a、b、cのいづれか。[a-c]と同じ
[!0-9] 0から9以外の文字列
[a-zA-Z0-0] すべてのアルファベット、数字、アンダースコア、ダッシュ

 

**cp コマンド

主なオプション説明
-i コピー先に同名ファイルが存在する場合、上書きするか確認する
-f コピー先に同名ファイルが存在しても、強制的に上書きする
-p コピー元の所有者、タイムスタンプ、アクセス権などの情報を保持したままコピーする
-R コピー元のディレクトリ階層をそのままコピー

 

**tar コマンド
複数のファイルを1つにまとめたデータのことをアーカイブファイルと呼びます。
tarコマンドはアーカイブファイルの管理に使用されます。

構文
tar [オプション]ファイル名またはディレクトリ名・・・n

主なオプション説明
-c アーカイブファイルを作成する
-t アーカイブファイルの内容を表示する
-x アーカイブファイルを展開する
-f アーカイブファイルを指定する
-v 詳細情報を表示する
-j bzip2を経由してアーカイブをフィルタする
-z gzipを経由してアーカイブをフィルタする

 

**dd コマンド
コピー入力あるいは出力にデバイスを指定する場合はddコマンドを使用します。
ddコマンドにはコピー部分の指定をしたり、データ変換を行う機能もあります。
実行例

[root@node001 ~]# dd if=image.iso of=/dev/sdb
if(input File):入力元
of(output File):出力先指定