私は端末からこのスクリプトを実行しようとしています(経由 sh )私の端末ウィンドウに次のエラーが表示されます。 /home/MinecraftServers/Ephona/serverconfig/ line 14: syntax error near unexpected token `fi" /home/MinecraftServers/Ephona/serverconfig/ line 14: `fi" #!
/ um_test1 [(1, 2)、(2, 1)] として実行する必要があります [mycom7]#. / um_test1 "[(1, 2)、(2, 1)]" また、コマンド/シェルスクリプトが複数行にわたる場合は、コマンド/シェルスクリプトを正しく実行していることを確認してください。 パラメータタイプのため、二重引用符が必要です。 余分なスペースがあると、コードが台無しになり、エラーメッセージが表示される場合があります。 実行しているコマンドの 公式ドキュメント を確認し、そこに問題があるかどうかを確認してください。 解決策2:シェルスクリプトのトラブルシューティング ソースシステムでは機能するがターゲットではエラーを返すシェルスクリプトを使用している場合、実行中に保存されている変数を確認してスクリプトのトラブルシューティングを行い、問題の原因を確認できます。 これは非常に一般的な原因です。いくつかの場合、シェルは印刷できない文字を解釈しようとします。 「vx」のパラメーターでシェルを実行してみてください。 これにより、実行されているコマンドとスクリプトに保存されている値が表示されます。 ここからトラブルシューティングを行い、問題の原因を診断できます。 たとえば、「vx」を次のように含めた後、ターミナルでスクリプトを実行します。 #sh -vx. / 次のように「cat」コマンドを使用して、スクリプトの内容を確認できます。 #cat 解決策3:「」コマンドを使用する Windows / DOSテキストファイルでは、改行はキャリッジリターン(\ r)とそれに続く改行(\ n)の組み合わせです。 Mac(Mac OS Xより前)では、改行に単純な復帰(\ r)が使用されていました。 Unix / LinuxおよびMac OS Xは、改行(\ n)改行を使用します。 Cygwinを使用している場合、余分なCarriage Return(\ r)文字があるため、DOS / Windowsおよび古いMacで作成されたスクリプトの処理に失敗します。 「」コマンドを使用する ここで、スクリプトを正しい形式に変換する「」コマンドを作成し、問題なく実行できます。 最後に、コマンドと使用しているプラットフォームのタイプを調査し、矛盾がないことを確認する必要があります。 すべての可能性を網羅することはできないため、どのような種類のエラーが発生し、どのように修正するかを考えてください。
ファイルのエンコードの問題である可能性があります。 異なるオペレーティングシステムとエディター間、特にLinuxとWindowsシステム間でファイルを操作するときに、ファイルタイプのエンコードの問題が発生しました。 ファイルのエンコーディングをチェックして、ターゲットのLinux環境に適していることを確認することをお勧めします。 MACを使用している場合、Windowsのテキストエディタを使用した場合よりもエンコーディングの問題は発生する可能性は低いと思いますが、ファイルエンコーディングはまだ検討する価値があると思います。 ---編集(@Potatoswatterが推奨する実際のソリューションを追加) ファイルタイプエンコーディングがこの問題になりうることを示すために、サンプルスクリプトをWindowsのメモ帳にコピーして貼り付け(Macにアクセスできません)、それをLinuxマシンにコピーして実行しました。 [email protected]:~/windows> sh. /originalfile. 修正:予期しないトークンに近い構文エラー `(‘. /originalfile: line 2: syntax error near unexpected token `$'{\r'' '/originalfile: line 2: `test() { この場合、メモ帳はキャリッジリターンとラインフィードでファイルを保存したため、上記のエラーが発生しました。 \r はキャリッジリターンを示します(Linuxシステムは改行で行を終了します \n のみ)。 Linuxマシンでは、次のコマンドを実行して、ファイルからキャリッジリターンが存在する場合はそれを取り除くことで、この理論をテストできます。 cat originalfile | tr -d "\r" > newfile 次に、新しいファイルを実行してみてください sh. /newfile 。これが機能する場合、問題は隠し文字としての復帰でした。 注: これは環境の正確な複製ではありません(Macにアクセスできません)が、問題はエディターは、どこかに保存されたキャリッジがファイルに戻ります。 --- /編集 少し詳しく説明すると、オペレーティングシステムとエディターは異なるファイルエンコーディングのデフォルトを持つことができます。通常、アプリケーションとエディターは、使用されるファイルタイプのエンコーディングに影響します。たとえば、Microsoft NotepadとNotepad ++はデフォルトでWindows-1252になっていると思います。改行の違いも考慮する必要があります(Windows環境では、ファイル内の行を終了するためにキャリッジリターンとラインフィードがよく使用されますが、LinuxとOSXでは、通常、ラインフィードのみが使用されます)。 ファイルエンコーディングを参照する同様の質問と回答は、ここにあります。 bashスクリプトの実行に現れる不正な文字
こんにちわ。 GUIよりも、コマンドの方が使いやすいと発言し始めたら、熟練者レベルという事を認識できる、下駄です。 先日、とあるシステムのサーバー内で、不要になったファイルを大量に削除しなければいけない作業があり、 findコマンドで、抽出して、rmコマンドに受け渡す、ワンライナーコマンドを実行したところ、 なんかわからないけど、エラーが出たので、調べてみたら、ファイル名に半角スペースが含まれていました。 5秒で終わると思ってた作業が意外と手こずったという事をブログに残しておきたいと思います。 本日のIT謎掛け 「ワンライナー・コマンド」と、かけまして、 「水漏れの修理」と、ときます。 そのココロは・・・ ・・・ パイプを使って、操作します。 半角スペースのファイルを削除するには・・・ コレ自体はそんなに難しいコトではないのですが、半角スペースにバックスラッシュを付ければいいダケのことです。 例えば、"image (1)"というような、macで同名ファイルがあったばあいに、自動採番されるファイルなど、半角スペースが入っているものを、コマンドでrm削除したい場合は、以下のようにします。 # 普通にエスケープ処理をせずに、実行すると、こんなエラー $ rm image ( 1). jpg bash: 予期しないトークン ` ( ' 周辺に構文エラーがあります # 半角スペースにバックスラッシュでエスケープしてみる。 $ rm image\ (1) bash: 予期しないトークン `(' 周辺に構文エラーがあります # 必要な文字列にすべてバックスラッシュを付けてあげる $ rm image \ \ ( 1 \). jpg また、もう一つの方法として、ファイルをクォーテーションでくくってあげるという手段 $ rm 'image (1)' $ rm "image (1)" シングルクォート、ダブルクォートのどちらでも問題なく削除できます。 find連動での問題について 1ファイルずつrmしていく場合は、全くもって問題ないんですが、 削除するファイルが多い場合に、パイプで受け渡す場合に、色々とめんどくさい手続きが必要になります。 まずは、エラーの状態を書くk人してみましょう。 # ls検索パターン ls *. 予期しないトークンの近くで構文エラーが発生しました `( 'コードの下に - bash、shell. jpg | rm rm: オペランドがありません Try 'rm --help' for more information.
化学 高校生 2年弱前 亜鉛などと希硫酸の反応により水素が発生する反応は、金属とH+の反応ですから、いわゆる濃硫酸の酸化力による反応でないことに注意してください Zn + 2H+ -> Zn2+ +H2 より、 Zn + H2SO4 -> ZnSO4 + H2 この説明の意味というか、理由(原因)がわかりません。ただ希硫酸は酸化力がないってことですか? 無機化学の硫黄の部分です。
COM管理人 大学受験アナリスト・予備校講師 昭和53年生まれ、予備校講師歴13年、大学院生の頃から予備校講師として化学・数学を主体に教鞭を取る。名古屋セミナーグループ医進サクセス室長を経て、株式会社CMPを設立、医学部受験情報を配信するメディアサイト私立大学医学部に入ろう. COMを立ち上げる傍ら、朝日新聞社・大学通信・ルックデータ出版などのコラム寄稿・取材などを行う。 講師紹介 詳細
ホーム 化学 有機化学反応は、人名反応も含めて膨大な数があります。 そこで、こちらのページでは反応を分かりやすく分類して紹介しています。 縮合反応 縮合反応は、2つの分子から水やアンモニア、アルコールなど簡単な分子の脱離を伴って、新しく共有結合を生成する反応のことです。 酸化反応 クロスカップリング反応 カップリング反応は2つの化合物を選択的に結合させる反応のことであり、『異なる』2つの化合物を結合させる場合はクロスカップリングと呼ばれます。特に遷移金属を用いた反応として知られています。 炭素-炭素結合形成反応 縮合反応やクロスカップリング反応も炭素-炭素結合を形成する反応ですが、こちらではそれら以外の反応をまとめていきます。 保護基 保護基は反応性の高い部位を化学反応から守るために利用します。さらに溶解性や沸点、結晶性を改善したり、反応の選択性を制御するなど様々な使い道があります。適切な保護基の選択は有機合成の成功を導くカギになります。 随時更新中! 1 2 … 16