重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

Q1)ddコマンドを使用して端末(標準出力)に表示する方法は?

Q2)echoコマンドを使用して端末(標準出力)に表示する方法は?

以上、宜しくおねがいします。

A 回答 (3件)

> $ ./AAA test.txt


> で表示がありませんでした。

標準入力と引数は扱いが違います。
引数を指定するときには、AAA $1として、リダイレクトを使いません。

引数を使うなら、
#!/bin/bash
while read tmp
do
echo $tmp
done < $1

$> ./AAA test.txt
test0 test1
tesa2
test3



標準入力を使うなら、引数($1)を指定せずに、
#!/bin/bash
while read tmp
do
echo $tmp
done

としてやれば、

$> ./AAA < test.txt
test0 test1
tesa2
test3
    • good
    • 0
この回答へのお礼

明快な回答有難うございました。
感謝!!!!!

お礼日時:2019/12/28 09:56

#1ですが、Q2でecho以外のコマンドを使うのがNGなら、



#!/bin/sh
while read tmp
do
echo $tmp
done < text.txt
    • good
    • 0
この回答へのお礼

お世話になります。

$ cat AAA
#!/bin/bash
while read tmp
do
echo $tmp
done < $1

$ ./AAA test.txt
で表示がありませんでした。

お礼日時:2019/12/27 16:15

1. dd if=test.txt


2. echo `cat test.txt`

ループを使わずにechoで複数行に分けての出力はできるのかなあ。なんとなくできないような気がします。
    • good
    • 0
この回答へのお礼

echo `cat test.txt`の回答は了解です。
下記で、『123456780+1 』と0+1が続くのが
判りません。
$ dd if=test.txt
123456780+1 レコード入力
0+1 レコード出力
9 bytes copied, 0.000115111 s, 78.2 kB/s
回答有難う御座いました。

お礼日時:2019/12/27 15:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

今、見られている記事はコレ!