2

このbashコマンドを文字列変数に保存したい:

find /Users/memmaker6501/Desktop/ -name "*\[*\]*" -type d >> busqueda.txt

しかし、シーケンスでエラーが発生しました\]

を文字列に格納する方法はあり\]ますか?

4

3 に答える 3

4

\特殊文字の前にa を置きます。このような"find /Users/memmaker6501/Desktop/ -name \"*\\[*\\]*\" -type d >> busqueda.txt"

于 2013-07-27T16:17:20.550 に答える
4

バックスラッシュと二重引用符は、次のようにバックスラッシュでエスケープする必要があります。

"find /Users/memmaker6501/Desktop/ -name \"*\\[*\\]*\" -type d >> busqueda.txt"

C++ 文字列のエスケープ シーケンス:

Escape
sequence    Description                     Representation

\'          single quote                    byte 0x27
\"          double quote                    byte 0x22
\?          question mark                   byte 0x3f
\\          backslash                       byte 0x5c
\0          null character                  byte 0x00
\a          audible bell                    byte 0x07
\b          backspace                       byte 0x08
\f          form feed - new page            byte 0x0c
\n          line feed - new line            byte 0x0a
\r          carriage return                 byte 0x0d
\t          horizontal tab                  byte 0x09
\v          vertical tab                    byte 0x0b
\nnn        arbitrary octal value           byte nnn
\xnn        arbitrary hexadecimal value     byte nn
\unnnn      arbitrary Unicode value.        code point U+nnnn
\Unnnnnnnn  arbitrary Unicode value.        code point U+nnnnnnnn
于 2013-07-27T16:18:31.130 に答える
3

C++11 には、複雑な文字列式の作成を簡素化する生の文字列リテラルがあります。

R"***(find /Users/memmaker6501/Desktop/ -name "*\[*\]*" -type d >> busqueda.txt)***"
于 2013-07-27T16:42:43.167 に答える