猫のこたつ

元理系研究職。日々の自分のメモとして書き始めました。

PC起動直後に現れるBIOSのパスワードを解除(削除)・設定する方法

PC起動直後に現れるBIOSのパスワードを解除(削除)・設定する方法

1.パソコン起動時にF2(※PCにより異なるので注意)を押してBIOSの画面に入る

  • ※使用するPCにより、解除の方法が異なります。今回は主に DELL LATITUDE のケースです

2.Securityを選択し、その中のSystem Passwordを選択する

  • ※「System Password」部分の表記はPCにより異なる場合があります
  • ※ユーザー用パスワードを変更したい時は「Set User Password」、管理者用パスワードを変更したい時は「Admin Password」になります

3.下記の①or②の手順を取る

  • ①「Enter the old password」に現在のパスワードを入力し、その下の「Enter the new password」「Confirm new password」は空白にする
    • OKボタンがあればOKを押下>右下のExitを押下しBIOS画面から出る
  • ②「Enter the old password」に現在のパスワードを入力しEnterを押すと、その下の「Enter current password」にカーソルが移る。空白のままEnterキーを押す
    • 変更内容を保存し、BIOS画面を出る
Enter the old password: (←現在のパスワードを入力する)
Enter the new password: (←空白)
Confirm new password: (←空白)

PC立ち上げ時にBIOSパスワードを設定したい場合

1.パソコン起動時にF2(※PCにより異なるので注意)を押してBIOSの画面に入る

2.Securityを選択し、その中のSystem Passwordを選択する

  • ※「System Password」部分の表記はPCにより異なる場合があります
  • ※ユーザー用パスワードを変更したい時は「Set User Password」、管理者用パスワードを変更したい時は「Admin Password」になります

3.「Enter the new password」と「Confirm new password」に、設定したいパスワードを入力します

Enter the old password: Not Set
Enter the new password: (←設定したいパスワードを入力する)
Confirm new password: (←設定したいパスワードを再度入力する)

4.変更内容を保存し、BIOS画面を出る

Linuxコマンドのメモ

【前提】
ユーザー名「kotatsu」で、サーバー「cat01」にいると仮定します。
最初に表示される[kotatsu@cat01 ~]$の意味ですが、[ユーザー名@サーバー名 ~]$となっています。

[kotatsu@cat01 ~]$

ディレクトリを行き来(上がったり下がったり)する時のコマンド

cdを使用します。
cd AA ←AAというディレクトリに移動
cd AA/BB/CC ←AAというディレクトリの下のBBの下のCCへ移動
cd .. ←一つ上のディレクトリに移動する

上記の合わせ技で、下記もできます
cd ../YY ←一つ上のディレクトリに移動した後YYというディレクトリに入る

[kotatsu@cat01 ~]$ pwd ←今いるディレクトリを確認する
 home/kotatsu ←最初は自分のユーザー名のディレクトリにいると思います
[kotatsu@cat01 ~]$ ls ←今いる場所にあるディレクトリを表示します
 bin etc lib  
[kotatsu@cat01 ~]$ cd lib ←その中のlibというディレクトリに入ります
[kotatsu@cat01 lib]$  ←libが現在地として[]に表示されます
[kotatsu@cat01 lib]$ cd .. ←今いる場所から一つ上のディレクトリに移動します(libを出ます)
[kotatsu@cat01 ~]$

ファイル権限の表示、変更

new.txtファイルの権限を表示し、変更する

[kotatsu@cat01 ~]$ls -la  ←new.txtファイルの権限(-rw-r--r--)や現在の所有者(user)、グループ(group)を表示する
 -rw-r--r--  1 user group  XXXX  8月 13 22:22 2015 new.txt ←644(所有グループに書き込み権限がない)の状態
[kotatsu@cat01 ~]$chmod 664 new.txt     ←664に変更
 -rw-rw-r--  1 user group  XXXX  8月 13 22:22 2015 new.txt
 ↑所有グループに書き込み権限が加わった(r-- → rw-)

ファイル権限とは

例えば「drwxrwxr-x」は、下記の4つの部分に分けられます
    ↓
「d rwx rwx r-x」

最初のdはファイル種別
次の3文字は所有者に対する権限
その次の3文字は所有グループに対する権限
最後3文字はその他に対しての権限です。

これら各権限を、数値で指定することができます。

記号(数値) 対応する権限
r (4) 読み込み可能
w (2) 書き込み可能
x (1) 実行可能
- (0) 権限なし
rwx → 4+2+1 = 7
r-x → 4+1 = 5

つまり「d rwx rwx r-x」の権限にしたいときは、775を指定する下記コマンドとなります。

[kotatsu@cat01 ~]$chmod 775 new.txt     ←775に変更

ファイル権限変更早見表

フォルダをこの権限にしたいけどどうするんだっけ、と困ったときのために、権限変更早見表を作ってみました。

権限変更 数値一覧

rwx → 4+2+1 = 7
rw- → 4+2 = 6
r-x → 4+1 = 5
r-- → 4


よく使用するファイル権限のための権限変更早見表

設定したいファイル権限 そのためのコマンド
drwxrwxr-x chmod 775 file.txt
-rwxr-xr-- chmod 754 file.txt
-rw-rw-r-- chmod 664 file.txt

↑"file.txt"部分に、権限を変更したいファイルを置きます

new.txtファイルの、所有者とグループを変更する

$ chown -c user1:group1 new.txt 
new.txtの所有者を user1:group1 に変更しました ← -cオプションで変更内容を表示できる

ファイル名の変更

  • test1.txt を new.txt にリネーム
[kotatsu@cat01 ~]$ mv test1.txt new.txt

ファイルを削除する

  • test1.txt を削除
[kotatsu@cat01 ~]$ rm test1.txt

ディレクトリを削除する

  • testディレクトリ を削除
[kotatsu@cat01 ~]$ rm -rf test

ディスクの空いている容量を表示する

[kotatsu@cat01 ~]$ df

mongodbのコマンドメモ

※2016/3/24更新

  • マーケデータの中身をざっくり見たり、デモグラ分析する時に使用するmongodbのコマンドをまとめはじめました。

mongoに入る

[kotatsu@cat01 ~]$ mongo

DB一覧を見る

  • その後、「show dbs」と記入しEnter。DB一覧が出る
[kotatsu@cat01 ~]$ mongo
> show dbs
admin                (empty)
shironeko_db     1.234GB
kuroneko_db      1.222GB
cyatora_db       0.333GB
  • 使用するDBを「use [DB名]」で指定しEnterを押下
    • 指定したDBにスイッチした旨のコメントが出る
> use shironeko_db
switched to db shironeko_db

コレクション一覧を見る

  • DB内部のコレクション一覧を表示させるときは「show collections」
> show collections
shiro-san
tama-san
sati-san

DBを消去する

  • DB名をuseで選択した後に、dropを行う
> use shironeko_db;
> db.dropDatabase();

コレクションを消去する

  • DB名をuseで選択した後に、dropを行う
> use shironeko_db;
> db.shiro-san.drop()  #db.collectionname.drop()

コレクション名を変更する

  • mongoに入りDBを指定したのち、リネームをする
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> show collections
shiro-san
tama-san   tama-sanからtamako-sanに変更したい
> db.tama-san.renameCollection("tamako-san");  
↑こちらのコマンドでリネームする
※db.[現在のコレクション名].renameCollection("[変更したいコレクション名]")
> show collections
shiro-san
tamako-san  tama-sanからtamako-sanに変更された

コレクションの指定カラムから指定単語を抽出する

  • 例として、shironeko_db内のコレクション"shiro-san"にある、"ごはん"カラムから"カニカマ"を抽出します
  • (白猫のシロさんは、ごはんに鰹節や甘エビなどをもらってますが、その中でカニカマを食べている行だけを抜き出します)
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.shiro-san.find({"gohan" : "kanikama"});
 ※db.[コレクション名].find({"カラム名" : "抽出したい単語"})

時間を指定して抽出(検索)する

  • 例として、"shironeko_db"内のコレクション"shiro-san"から、時間の入っている"created_at"カラムを使用して、8/1の0時以降のものを抽出する
  • "created_at"カラムには、ISODateの形式で日時データが入っているとする
  • "以降(以上)"の場合は$gteを使用する。8/1の0時のレコードも含む。0時の境界を含みたくない場合は$gtにする
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.shiro-san.find({created_at:{"$gte" : ISODate("2015-08-01T00:00:00")}});
 ↑8/1の0時以降のレコードが表示される
> db.shiro-san.find({created_at:{"$gte" : ISODate("2015-08-01T00:00:00")}}).count();
 ↑上記の件数をカウントしたいときは、最後に.countをつける

"~以上""~未満"などの表現には下記を使用する

意味 対応するコマンド
以上(※境界の数値を含む) $gte
以下(※境界の数値を含む ) $lte
超える・より大きい(※境界の数値を含まない) $gt
未満・より小さい(※境界の数値を含まない) $lt

一定の時間・期間を指定して抽出(検索)する

  • 例として、"shironeko_db"内のコレクション"shiro-san"から、時間の入っている"created_at"カラムを使用して、8/1の0時以降(以上)~8/2の0時未満(8/2の0時は含まない)のものを抽出する
  • "created_at"カラムには、ISODateの形式で日時データが入っているとする
  • 「~以上、~未満」はよく使用する形式だが、"以上(以降)"は$gte、"未満"は$ltを使用する
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.shiro-san.find({created_at:{"$gte" : ISODate("2015-08-01T00:00:00"), "$lt" : ISODate("2015-08-02T00:00:00")}});
 ↑8/1の0時以降~8/2の0時未満のレコードが表示される
> db.shiro-san.find({created_at:{"$gte" : ISODate("2015-08-01T00:00:00"), "$lt" : ISODate("2015-08-02T00:00:00")}}).count();
 ↑上記の件数をカウントしたいときは、最後に.countをつける

コレクションのカラムから、重複を省いてカウントする

  • 例として、"shironeko_db"内のコレクション"shiro-san"から、ごはんの種類の入っている"ごはん"カラムの重複を抜いて、抽出する
  • (白猫のシロさんは、ごはんに鰹節や甘エビ、かにかまなどをもらってますが、それらがいったい何種類あるのかを抽出します)
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.getCollection('shiro-san').distinct("gohan").length
27 ←27種類のごはんを食べていました

コレクションのカラムから、重複を省いて一覧を出す

  • 例として、"shironeko_db"内のコレクション"shiro-san"から、ごはんの種類の入っている"ごはん"カラムの重複を抜いて、抽出する
  • ※ " は ' でもOKです
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.shiro-san.distinct("gohan");
※db.collection_name.distinct("column_name");
{
    "0" : "鰹節",
    "1" : "キャットフードA",
    "2" : "お刺身",
     (中略)
    "26" : "甘エビ"
} ←27種類のごはんの一覧が出る

コレクション内のカラムと単語を指定し、それが含まれるレコードを取得する

  • 例として、"shironeko_db"内のコレクション"shiro-san"から、ごはんの種類の入っている"ごはん"カラムの中の鰹節のみを抜いて、抽出する
  • (白猫のシロさんは、ごはんに鰹節やカニカマなどさまざま食べてますが、その中でも鰹節だけ抽出します)
> [kotatsu@cat01 ~]$ mongo
> use shironeko_db;
> db.shiro-san.find({"gohan" : "鰹節"})
※db.コレクション名.find({"カラム名" : "抽出したい単語"})
{
    "id" : 12,
    "gohan" : "鰹節",
    "created_at" : ISODate("2016-01-01T11:11:11.000Z"),
    "name" : "shiro-san",
}
{
    "id" : 15,
    "gohan" : "鰹節",
    "created_at" : ISODate("2016-01-02T22:22:22.000Z"),
    "name" : "shiro-san",
}
↑鰹節は2回、2016年1月1日と2日に食べていたことがわかりました

テキスト処理(列の抽出や重複抜きなど)のメモ

カンマの入っているファイル形式(CSV)のテキスト処理

  • CSVファイル(test.csv)から2行目だけを抜き出す
[kotatsu@cat01 ~]$  cat test.csv | awk -F',' '{print $2}'
  • CSVファイル(test.csv)から2行目だけを抜き出し、その後ソートして重複抜きにして別ファイル(test1.txt)として保存する
[kotatsu@cat01 ~]$ cat test.csv | awk -F',' '{print $2}' | sort | uniq > test1.txt

その他コマンド

  • test1.txt を new.txt にリネーム
[kotatsu@cat01 ~]$ mv test1.txt new.txt

Twitter4Jを使用してTwitterからとある条件のtweetを取得する (非エンジニア向け)~eclipse, Java環境~ (後半)

前半の記事の続きです。

nekonokotatsu.hatenablog.com


プロジェクトを作成する

eclipseの上部のナビゲーションから、「ファイル」>「新規」>「プロジェクト」を選択し、プロジェクトを作成します。


プロジェクトというのは一つのフォルダ(入れ物)のようなものです。例えば「Shimamike」という名前を記入すると、eclipseの左上の「パッケージ・エクスプローラ」という画面に、「Shimamike」というフォルダのようなものが現れます。

ここから、中身を作っていきます。

eclipseの左上の「パッケージ・エクスプローラ」という画面にできた、「Shimamike」を右クリックして、「新規」>「クラス」をクリックします。開いたポップアップ画面で名前を入力し(例えば、”GetTweet”とする)、

「どのメソッドスタブを作成しますか?」のところにある「public static void main(String[] args)」にチェックを入れて、「終了」ボタンをクリックします


すると、画面右側に、GetTweet.javaファイルが出来上がります。

 

Twitter4J認証用のプロパティを作成する

eclipseを立ち上げて、左上の「パッケージエクスプローラ」の画面の中にある「src」を右クリック>「新規」>「ファイル」をクリックし、ファイル名を「twitter4j.properties」にして保存します。

 

この「twitter4j.properties」ファイルに下記を記載します。
”XXXXX”には、twitter APIで出てきたコンシューマーキーとトークンの情報を入れます。

----------
#
debug=false
oauth.consumerKey=XXXXX 
oauth.consumerSecret=XXXXX 
oauth.accessToken=XXXXX
oauth.accessTokenSecret=XXXXX

----------

 

クラスパスを通す

eclipseの左上の「パッケージエクスプローラ」のクラス名を右クリック>「ビルド・パス」>「ビルド・パスの構成」をクリックして、

ライブラリー」タブ>「外部jar追加」>ダウンロードしたTwitter4Jのlibフォルダの「twitter4j-core-(※ここにバージョンが入る).jar」を選択します。

これでこの中で、Twitter4Jを使えるようになります。

 #「外部ライブラリー」のところに、選択したライブラリーが追加されてることが確認できると思います。

 

コードを書いて実行してみます。
----------
System.out.println("Hello");
----------
の一文を入れて、画面上のメニューバーにある、緑の三角ボタンを押して実行します。

下の画面に「Hello」が現れたら、環境設定は成功です。

 


目的のツイートを収集する

さて、いよいよツイート集めです。

もう一度、今度は別名でクラスを作成しコードを記入します。

こちらのコードを参考にさせていただきました。

 

Twitter4Jタイムラインの取得
Twitter4JでTweetを収集してみる  ←「SearchAPIを使ってみる」部分のコード 

 

保存して実行すると、下のコンソール画面に、取得されたツイートが表示されます。

PuTTYの文字化け対処

現在の文字コードの確認

  • PuTTYでサーバーに接続し、コンソール上(黒い画面)で「echo $LANG」と書いて実行
    • (下記は、ユーザー名「kotatsu」サーバー名「cat01」の場合)
[kotatsu@cat01 ~]$  echo $LANG (←と記載してEnterを押下)
ja_JP.EUC-JP   (←現在は文字コードEUC-JPとなっていることがわかる)

設定変更

  • PuTTYのコンソールの上部の、サーバ名が載っている部分で右クリックをし、そこから「設定の変更」をクリック
  • 設定変更画面が表示されるので、左の「カテゴリ」枠内の「ウィンドウ→変換」を選択。
  • 文字コードの設定」で、「UTF-8」を選択。「適用」をクリック

文字コードの確認

  • 再度下記コマンドを実行
[kotatsu@cat01 ~]$ echo $LANG
ja_JP.UTF-8   (←文字コードEUC-JPからUTF-8に変更された)
    • これで次からは文字化けせずに日本語となる