• 日本語
    • English (英語)
Avinton JapanAvinton JapanAvinton JapanAvinton Japan
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
      • 自動車ナンバープレート自動認識システム
    • プライベートクラウド
    • AIサービス開発
    • AIカメラ/画像解析無料体験版
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
    • Academy with Platform
  • 採用情報
    • Avintonジャパン 採用ページ
    • 求人一覧
    • よくある質問
    • 新卒採用
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ

ファイル操作コマンド

  • ルーティング
  • データベースの命名規則
  • 三目並べ – 2.〇×を交互にゲーム盤に入るようにしよう
  • 三目並べ – 3.勝敗がつくようにしよう
  • クリーンコード(Clean Code)
  • 三目並べ – 4.「スタート」「リセット」ボタンをつけよう
  • 三目並べ – 5.先攻後攻を決めて、コンピュータ対戦にしよう(前編)
  • インフラストラクチャー(サーバー、コンポーネント、RAID)
  • 機械学習入門者向け Support Vector Machine (SVM) に触れてみる
  • YOLOv8を用いた物体検出
  • 正規表現とパイプ
  • 機械学習エンジニアに必要なスキル
  • 軽量版Kubernetesディストリビューション – k0s クラスターの構築
  • ファイル操作コマンド
  • グループとユーザー
  • 困った時に使うコマンド
  • 一般グループのユーザーとグループ
  • プライバシーポリシー
  • 三目並べ – 6.先攻後攻を決めて、コンピュータ対戦にしよう(後編)
  • フロントエンド開発のための環境構築
  • ファイル検索コマンド
  • 質問
  • 仮想化環境のディスク容量を拡張する
  • ユーザー権限とアクセス権
  • データ分析基礎 – Part1
  • 三目並べ – 0.導入
  • テキスト処理
  • データベースへのデータロード
  • 機械学習概要1
  • 機械学習入門者向け Naive Bayes(単純ベイズ)アルゴリズムに触れてみる
  • ファイル管理
  • SSHを使用してホストOSからゲストOSに接続する
  • 機械学習入門者向け ChainerRLでブロック崩しの学習
  • 機械学習入門者向け ランダムフォレストによる Kaggle Titanic生存者予測
  • 機械学習概要2
  • データ分析基礎 – Part 2
  • 機械学習入門者向け 分類と回帰の違いをプログラムを書いて学ぼう
  • フロントエンドのWeb開発について
  • ダイナミックルーティング
  • 三目並べ – 1.ゲーム盤を作ろう
  • 【Python入門】Python Numpy チュートリアル
  • Amazon EC2 インスタンスの初期設定をしよう
  • AmazonEC2とVPCでネットワークとサーバーを構築しよう
  • Apache NiFi Exercise
  • Apache NiFi データパイプライン基礎
  • Apache NiFiの環境設定
  • Apache Spark 基礎
  • Apache SparkとApache Zeppelinの概要と環境構築
  • Apache Superset maptoolの使い方
  • Apache Superset 基礎
  • Apache Superset 概要と環境構築
  • Apache Zeppelin 基本機能
  • APIのデモンストレーション
  • Avinton Academy コンテンツガイド
  • AWS CLIをインストールしてコマンド操作しよう
  • AWS CLIを使ってEC2のファイルをS3へアップロードしよう
  • AWS Route 53を使って独自ドメインのWebページを表示させてみよう
  • AWSアカウントの作成と必ずやるべきセキュリティ対策
  • AWSのEC2インスタンスでWordPressブログを公開してみよう
  • AWS入門者向け 初心者が最初に理解すべきEC2とVPCの基本的な用語解説
  • CCNA
  • Certbotを使ってSSL証明書を発行し、HTTP通信を暗号化しよう
  • CISCO 1800ルータセットアップ
  • CSV import & export – Node.js, mySQL – 1
  • CSV import & export – Node.js, mySQL – 2
  • Docker Compose(Nginx + Flask + MySQL)演習
  • Docker Engineのubuntu上へのinstall
  • Docker 概要とセットアップ
  • Docker, Kubernetesの学び方について
  • Dockerコンテナイメージの最適化/ベストプラクティス
  • DockerとApacheを使ってWebサーバーを構築しよう
  • EC2からS3へ自動でぽいぽいアップロードするスクリプトの作成
  • ESP32-CAMのサンプルアプリケーションを実行する
  • 01 – Sparkfun Inventor’s Kit の準備
  • 02 – Sparkfun Inventor’s KitでLチカ
  • 03 ポテンショメータでLEDの点滅間隔をアナログ入力する
  • 04 フォトレジスタで明るさに反応するシステムをつくる
  • 05 LCDに文字列を表示する
  • 06 – BME280とLCDを組み合わせて温度計をつくる
  • ESP32とArduino IDE/PlatfromIOでHello Worldアプリケーションの実行
  • ESP32と超音波センサー HC-SR04 で物体の距離を計測する
  • ESXi – Switchの追加とVLAN
  • ESXi – VyOS
  • ESXi – 小規模ネットワーク 構築
  • Gitとは
  • VS CodeでGitHub Copilotを設定する
  • VSCode リモート開発環境
  • GNS3のセットアップ
  • Kubernetesクラスター上へのOpenVINOモデルサーバーを使用したサンプルアプリケーションのデプロイ
  • Linuxとは
  • NAT
  • NodeJSでWebアプリケーション開発 – React編
  • NodeJSでWebアプリケーション開発 – React編
  • NodeJSでWebアプリケーション開発 – React編
  • NodeJSでWebアプリケーション開発 – Socket.IO編
  • NVIDIA Cumulus VX + GNS3でBGPネットワークのシミュレーション
  • OpenCVのテストプログラム
  • PacketTracerのセットアップ
  • Pandasによる構造化データ分析
  • PCからルータ、スイッチへのSSH接続設定
  • PostGIS exercise
  • PostgreSQL – Python – Apache – Bootstrap
  • MySQLとMySQL Workbench のセットアップ
  • PostgreSQL Setup
  • PostgreSQL – インデックスを利用したパフォーマンス改善方法
  • PostgreSQL – パーティショニングを利用したパフォーマンス改善方法
  • PostgreSQLによるデータ分析
  • postgreSQLへのshp fileのimport
  • Python2.7とOpenCVのインストール
  • Python3.8 と OpenCV のインストール (Ubuntu20.04LTS)
  • Pythonでデータベースを操作する
  • Pythonで画像を分類するプログラムを作成する
  • Pythonによるマルチスレッドプログラミング実践
  • Raspberry Pi 4B のセットアップ
  • Raspberry PiとBME280を使用して温度と湿度、気圧を読み取る
  • REDIS
  • Redux基礎 – 主要な概念と用語
  • Ruby on Rails を MySQLでセットアップ
  • Ruby on Railsによる簡単なウェブアプリケーション
  • SampleアプリケーションのKubernetes上へのデプロイ
  • Scala 基礎
  • scikit-learnとは
  • Spark SQL エクササイズ
  • SparkMLによるKaggle Titanic生存者予測
  • KNIME, AutoMLライブラリによる住宅価格予測
  • SparkMLによる住宅価格予測
  • SQL 便利な関数
  • Ubuntuの基本設定
  • uhubctlでUSBデバイスのオンオフをコントロール
  • Terraform入門 2 – Terraformのstate管理
  • Terraform入門 1 – TerraformでAWS上にEC2インスタンスを作成する
  • Virtualisation and Container (仮想化とコンテナ) – Ansible, Docker and Kubernetes
  • viエディタ
  • VLAN
  • VMware ESXi サーバー構築
  • Webアプリ開発に欠かせないGoogle Chrome DevToolsの基本
  • Windows Server 2012 R2 Hyper-V
  • YOLOv5を用いた物体検出
Home Avintonアカデミー ファイル操作コマンド

Linuxの操作の基本は、コマンドを入力して操作する方法です。
この章では、ファイル操作に必要な基本的なコマンドについて説明します。

ファイル操作

 

ファイルとディレクトリ

コンピュータの基本作業は、情報、すなわちデータを処理することにあります。
皆さんもコンピュータ上にデータを保存するときファイルという形式を用いていると思います。
文書を作成したら文書ファイルを保存し、デジカメで写真を取れば、画像ファイルをパソコンに保存するといった具合です。

 

ファイルが増えると内容や用途といった目的別に分ける必要が出てきます。
このときに必要な考え方が「ディレクトリ」です。

 

ディレクトリは目的別に複数のファイルをまとめることができ、さらにディレクトリの中にディレクトリを作成することも可能です。
WindowsやMacでいうフォルダと同じ概念と思っていただいて構いません。

ディレクトリ構造解説

左:ディレクトリがない場合 右:ディレクトリがある場合

 

上図のように、ディレクトリでカテゴリ別にファイルをまとめると、必要なファイルを素早く見つけることができます。

 

Linuxは、親ディレクトリの中に複数のディレクトリが存在し、それらのディレクトリの中にさらにディレクトリが存在するという、以下の図のようなツリー状の構造をしています。Liniuxでは、一番上の階層にある親ディレクトリをroot(/)ディレクトリと呼んでいます。

ディレクトリ構造解説

 

特別なディレクトリ

Linuxでは、ディレクトリの中で特別なディレクトリや、それを表す記号があります。

 

カレントディレクトリ(.)

現在いるディレクトリ。ファイルやディレクトリを操作する際にドットを用いて表す。

 

親ディレクトリ(..)

1階層上のディレクトリを示す。カレントディレクトリが/home/ユーザー名だった場合、/homeが親ディレクトリにあたる。

 

ホームディレクトリ(~)

ユーザの作業開始位置となるディレクトリ。ログイン直後は、必ずそれぞれのユーザのホームディレクトリにいる。ファイルやディレクトリ操作の時はチルダを用いる。

 

ルートディレクトリ(/)

ディレクトリ階層の最上位階層を示す。ファイルやディレクトリ操作ではルートを使って表す。

 

絶対パスと相対パス

個々のディレクトリやファイルが階層構造のどこにあるのか、すなわちディレクトリやファイルの住所のようなものをパスといいます。
例えば、カレントディレクトリが/usr/localであるとします。このとき、/usr/bin/xxxのファイルを指定するには、以下の2通りが存在します。

 

① /usr/bin/xxx

 

② ../bin/xxx

 

①は最上位のルートディレクトリからディレクトリやファイル名を指定しており、これを絶対パスといいます。
②はカレントディレクトリから見てディレクトリやファイル名を指定しており、相対パスといいます。

ディレクトリ構造解説

絶対パスを指定すれば、カレントディレクトリがどこであっても指定したディレクトリやファイルに移動することができますが、相対パスはカレントディレクトリが変わってしまうと利用することができません。

 

ディレクトリの変更(cd)

現在いるディレクトリから移動するにはcd(Change Directory)コマンドを用います。cdコマンドのみ打つとホームディレクトリに移動します。

1
cd ディレクトリ名

それでは、pwdコマンドで現在地を確認して、/usrディレクトリに移動してみましょう。その後、再度pwdコマンドを打ってみてください。
カレントディレクトリが/usrディレクトリになっているのが確認できたと思います。

ディレクトリ構造解説

 

現在のディレクトリの表示(pwd)

ディレクトリは、階層構造になっています。その階層の中で、現在どの位置にいるか、すなわちカレントディレクトリを表示するのが、pwd(Print Working Directory)コマンドです。

 

1
pwd

試しに、ホームディレクトリでpwdと打ってみてください。
ディレクトリ構造解説

 

その結果、/home/ユーザ名と表示されたと思います。
つまり、現在のディレトクトリは、ルートディレクトリ下のホームディレクトリのユーザ名ディレクトリにいるということになります。

 

ファイルやディレクトの参照(ls)

ファイルを操作する上で最初に必要になるコマンドは、その一覧を取得するコマンドです。ls(LiSt)コマンドは、ファイル名やディレクトリ名を指定して情報を取得することが可能です。ディレクトリを指定すれば、そのディレクトリ内のファイルやディレクトリ名の一覧を取得することができます。また、オプションをコマンドの後ろに指定するとどのようにファイルやディレクトリの一覧を表示するか決めることができます。

1
ls オプション ファイルorディレクトリ名

【代表的なオプション】

-a  : “.”で始まる隠しファイルもすべて出力

-l  : 長(long)形式で出力

-r  : 逆順(reverse)にソートにして出力

-t  : 最終更新時間(time)によってソートして出力

 

まず、lsとだけ打ってみてください。
以下のようにホームディレクトリにあるファイルやディレクトリの一覧が表示されると思います。
白字:ファイル、青字:ディレクトリ、緑字:実行ファイル

ディレクトリ構造解説

 

次にlsコマンドの後ろにオプションを指定してみましょう。
オプション-aの場合、

ディレクトリ構造解説

 

lsコマンドだけ打ち込んだときに表示されたものに加えて、「.」から始まるファイルやディレクトリが表示されていると思います。これらは、隠しファイルと呼ばれており、設定ファイルや普段編集しない重要なファイルです。

 

次にオプション-lを指定してみましょう。

ディレクトリ構造解説

 

その結果、ホームディレクトリに存在するファイルやディレクトリの詳細の情報も加わって表示されたと思います。
このようにオプションをコマンドの後ろに指定すると、出力の仕方を変更することができます。
また、オプションは2つ以上組み合わせることが可能です。

 

試しにls -laと打ってみてください。(オプションは繋げることも可能。ls -a -lも同意。)
すると、以下のようにホームディレクトリにある隠しファイルを含めた全ファイルやディレクトリの詳細情報の一覧が表示されたと思います。

ディレクトリ構造解説

 

また、オプションの順番に決まりはなく、繋げたり分けたりしても同じ結果が得られます。
以下の4つはどれも同じ結果を得ることができます。

ls -a -l
ls -l -a
ls -la
ls -al

 

ファイルのコピー(cp)

ファイルを扱う上で複製を作成するなどコピーが必要になることがあります。それを行うのがcp(CoPy)コマンドです。cpコマンドはファイルを複製し、新しくできた複製のファイルのファイル名を指定することができます。

1
cp オプション コピー元 コピー先

【代表的なオプション】

-i  : 処理を行う際に確認を行う。誤って上書きするのを防ぐために利用される。

-r  : ディレクトリをコピーする。

-p  : 元ファイルの情報を保持してコピーを行う。

では、/etc/hostsファイルをホームディレトクトリに新しくコピーしてみましょう。
“~”は、ホームディレクトリを示しています。

ディレクトリ構造解説

 

cpコマンド実施後、lsコマンドでファイルの一覧を表示させると、”hosts”ファイルがホームディレクトリに追加されているのが確認できます。

次に、/etc/hostsファイルを別名としてホームディレクトリにコピーしてみましょう。

ディレクトリ構造解説

 

cpコマンドでファイルをコピーすると、新しいファイルのタイムスタンプは更新されますが、オプション-pを指定すると、古い情報を保持したままファイルをコピーすることができます。
これを確かめるために、先ほど作成したhosts.newfileをhosts.sametimeという新しいファイルしてコピーしてみましょう。
するとタイムスタンプが同一なファイルが作成されたことが確認できます。

ディレクトリ構造解説

 

次にディレクトリをホームディレクトリにコピーしてみましょう。
後ほど説明しますが、ディレクトリを新規作成するmkdirコマンドで新しいディレクトリを作成しておきましょう。
また、ディレクトリをコピーするためには、cpコマンドの後ろにオプション-rを指定する必要があります。

 

ディレクトリ構造解説

ここでは、mkdirコマンドでnewdirディレクトリを作成し、cpコマンドでホームディレクトリにnewdir2としてコピーをしています。

 

ファイルの移動(mv)

ファイルを移動させるときに利用するコマンドがmv(MoVe)コマンドです。mvコマンドは、ファイル名の変更も行えます。

1
mv 移動元ファイル 移動先ファイル(or ディレクトリ)

※移動先ファイルまたはディレクトリが存在しない場合は、移動元ファイルの名前の変更を行います。

 

【代表的なコマンド】

-i  : 処理を行うときに確認を行う。誤って上書きするのを防ぐ。

-f  : 強制的に処理を実行する。

さきほど作成したhostsファイルをnewdirディレクトリに移動させてみましょう。

ディレクトリ構造解説

mvコマンドでファイルを移動させた後、lsコマンドでnewdirディレクトリの中身を見てみると、hostsファイルがnewdirディレクトリ下に移動しているのが確認できます。

 

ディレクトリの作成(mkdir)

ディレクトリを作成するのは、mkdir(Make Directory)コマンドを使用します。

1
mkdir ディレクトリ名

【代表的なオプション】
-p  : 指定されたディレクトリの上位ディレクトリも作成する。

 

まずは、オプションを使用せず、dir1ディレクトリの下位にdir2ディレクトリ,その下位に dir3ディレクトリを作成してみましょう。オプションを使用しない場合だと、以下の3つに分けてコマンドを打つ必要があります。

 

オプション-pを指定すると、以下のように一度に実行することが可能です。

 

ファイルの削除(rm)

作成したファイルを削除するときに利用するコマンドが、rm(ReMove)コマンドです。rmコマンドは、削除したいファイルを指定します。

1
rm ファイル名

 

ディレクトリの削除(rmdir)

ディレクトリを削除するには、rmdir (Remove Directory)コマンドを用います。このコマンドを使用するうえで注意すべき点は、空のディレクトリしか消せない点です。中身が入っているディレクトリはrmコマンドで削除することが可能です。

1
rmdir ディレトクトリ名

【代表的なコマンド】-p:指定した階層までのディレクトリを一括に削除をする。
前へ
次へ

採用情報

採用情報

Categories

  • 相互学習
  • 採用
  • 社員インタビュー
  • 学習&資格取得
  • 技術解説
  • イベント告知
  • 学内説明会&講義
  • 産学連携
  • 就職活動
  • イベントレポート
  • その他
  • 技術ブログ&インタビュー
  • mainpage
  • New Graduates Interviews
  • 中途エンジニア
  • カテゴリーなし
  • ニュースリリース&イベント

Avinton SDGs

SDGsへの貢献

Search

タグ

AI時代の経営 AvintonAcademy on Campus AWS Docker DQN FINOLAB Git IoT James Cauchi LPIC LPIC-2 PM&PMO Predictive Maintenance Raspberry Pi Sound Analysis SSD イベントレポート インターン インフラ エッジコンピューティング エリクソン クラウトネイティブ セミナー ディープラーニング データ生成 データ解析 ファンダフルリレーマラソン モブワーク リスキリング リードエンジニア 中瀬幸子 企業説明会 勉強会 大学&専門学校 帰社日 強化学習、機械学習 技術ブログ 採用 掲載告知 未経験 田中 研之輔 画像分類 社員紹介 第一級陸上特殊無線技士 観光データ
© 2023 Avinton | All Rights Reserved | プライバシーポリシー
  • サービス
    • Avinton Data Platform
    • エッジAIカメラ
      • 自動車ナンバープレート自動認識システム
    • プライベートクラウド
    • AIサービス開発
    • AIカメラ/画像解析無料体験版
  • 最新情報
    • ニュースリリース&イベント情報
    • 技術ブログ&インタビュー
  • アカデミー
    • Avintonアカデミー
    • Academy on Campus
    • Academy with Platform
  • 採用情報
    • Avintonジャパン 採用ページ
    • 求人一覧
    • よくある質問
    • 新卒採用
  • 企業情報
    • 会社概要
    • 代表からご挨拶
    • SDGsへの貢献
  • お問い合わせ
  • 日本語
    • English (英語)
Avinton Japan