3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

IBM i (駆け出し)日記:5250上でシェルコマンドを実行する

Last updated at Posted at 2026-01-21

はじめに

お客様から「 IBM i 上でsftpクライアントを構成したいのだけれど、シェルコマンドを実行するためのCALL QP2TERMがエラーになってしまう」とお問い合わせをいただきました。

その(色々原因及び解決方法はあると思いますが1つの)解決方法です。

英小文字を扱える文字コード(CCSID)に変更すると実行できる

IBM i 側ジョブの CCSID が英小文字を正しく扱えない場合、PASE の実行ファイルパスやコマンド名が正しく渡らず、シェルコマンドや ssh の起動に失敗します。
なのでこの設定を変更します。

現環境のジョブの文字コード(CCSID)を確認

まず現環境のジョブの文字コード(CCSID)を確認します。

DSPJOB

2番を選択して、ジョブ定義属性を表示します。
image.png

ここが、以下のような小文字が認識できない文字コードの場合は、ジョブの文字コードを変更する必要があります。

コード化文字セットID:65535
省略時のコード化文字セットID:5026

CHGJOB CCSID(5035)を実行

ジョブのCCSIDを変更すればOK!
CHGJOBするとCCSID変わっていることが確認できる。
image.png
サインアウト及びジョブ落とすと元のCCSIDに戻ります。

CALL QP2TERM
image.png

qshでもシェルコマンド実行はできる

qshと入力してもシェルコマンド実行はできます。
image.png

image.png

使い分けについてはこちらの記事を参考にしてください!
(QA) ACSから(IBM iの外から)IBM i のシェルコマンドを実行する

参考・備考記事たち

CCSIDについて書いた記事:
IBM i (駆け出し)日記:IBM i の文字コードとCCSID概要(初心者向け)

問い合わせいただいた元記事:
公開鍵認証を使用するように IBM i ssh、sftp、scp クライアントを構成する

3
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?