Top/article/Bash-cannot-echo-E
English | Japanese
English | Japanese

Menu

  • Top
  • Akihiko Yamaguchi 山口 明彦
  • Project プロジェクト
  • Text テキスト
  • Recent articles 最近の記事
  • Articles 記事一覧 (a to z)
  • Search 検索

Tags タグ †

  • [c++][bash][python][latex][php]
  • [linux][windows][mac][android]
  • [math][algorithm][idea][trick]
  • [liboctave][opencv][git][ros]
  • [setting][bug][general]
↑

Recent articles 最近の記事 †

2019-07-02
  • article/Display-Unix-Time
  • article/Synchronize-Linux-Time-to-Remote
2018-09-27
  • article/python-multimode-singleton
2018-09-02
  • article/rosinstall-git-default-remote
2017-07-28
  • article/SubMenu
2017-03-05
  • article/Import-a-different-version-of-OpenCV-in-Python
2015-08-17
  • article/DRC-finals-2015
2015-01-05
  • article/Upgrade-Android-to-Lollipop
2015-01-01
  • article/Kernel-panic-of-Linux-when-using-Xtion
  • article/Do-not-skip-freeing-data-when-using-tri-mesh-in-ODE
Access: 3/2681 - Admin
These search terms have been highlighted:[bash]

bash cannot echo '-E'?

bash は '-E' を echo できない(?)

[bash][c++]
2009-10-12

echo '-E' とすると,'-E' が echo のオプション(エスケープ文字を解釈しない)として解釈され,echo できない.変数に代入したりしても同じ.しかたないので,C++ で引数を直接出力するプログラムを書いた.

(追記@Oct.14,2009)printf -- '-E' とするのがスマートな解決策のようです(コメント参照).id:atottoサンクス.

bash の実行例:

akihiko$ echo '-A'
-A
akihiko$ echo '-E'
akihiko$ echo "-E"
akihiko$ echo '\-E'
\-E
akihiko$ a='-A'
akihiko$ echo "$a"
-A
akihiko$ a='-E'
akihiko$ echo "$a"

のように,どうやっても '-E' を標準出力に出力できる気配がない.そこで,

decho.cpp :

#include <iostream>
using namespace std;
int main(int argc, char**argv)
{
  if(argc==1) return 0;
  cout<<argv[1];
  for(int i=2;i<argc;++i) {cout<<' '<<argv[i];}
  return 0;
}

をコンパイルして decho というプログラムを作った.これで '-E' を問題なく出力(decho '-E')できる.ちなみに,decho は改行を出力しない.

用途 †

変数の内容を sed に送るときとか. e.g.

  a='-E' # a にはほかの内容が入っているかもしれない
  decho "$a" | sed ...

ほかの方法は? 変数の内容を判定するとか(実は '-En' とか '-eE' とかもちゃんと出力できないことに注意).

皆さんどうやってるんでしょうか.




Last-modified:2014-12-31 (Wed) 03:19:45 (3804d)
Link: article/Command-line-option-parser-for-bash(3804d)
Site admin: Akihiko Yamaguchi.
Written by: Akihiko Yamaguchi.
System: PukiWiki 1.5.0. PHP 5.2.17. HTML conversion time: 0.008 sec.