différences entre QSHELL /QPASE

IBM i, configuration, commandes, ...
Répondre
jysaulieres
Messages : 26
Enregistré le : ven. 26 oct. 2018, 09:58:31

différences entre QSHELL /QPASE

Message par jysaulieres »

Bonjour,
Quelques questions concernant QSHELL et QP2TERM (PASE) (nous sommes sur IBM i V7R3, packages installés via yum)
1) Quand je suis sous QSHELL et que je saisi
which php => which : 0652-141 Pas de php dans /QOpenSys/usr/bin /usr/ccs/bin /QOpenSys/usr/bin/X11 /usr/sbin . /usr/bin.
Mais si je tape directement php --help => il m'affiche l'aide
Ma variable d'environnement (en tapant "env") : PATH=/QOpenSys/usr/bin:/usr/ccs/bin:/QOpenSys/usr/bin/X11:/usr/sbin:.:/usr/bin
alors que si je tape "echo $PATH" j'obtiens :
/QOpenSys/pkgs/bin:/QOpenSys/pkgs/lib/nodejs14/bin:/usr/bin:.:/QOpenSys/usr/bin

2) dans nos CLs on utilise souvent la commande QSH CMD('touch -C 1208 toto.txt') pour créer un fichier vide avec un ccsid spécifique
Pourtant que je sois dans PASE ou dans QSHELL, cette commande m'indique : touch: invalid option -- 'C'
Je trouve la commande "touch" à plusieurs endroits:
- /QOpenSys/pkgs/bin/touch
- /QOpenSys/usr/bin/touch
- /usr/bin/touch => (c'est la seule commande qui accepte le parametre -C 1208)
Pourquoi la commande QSH CMD('touch -C 1208 toto.txt') va prendre le étouch" qui se trouve dans /usr/bin alors que dans les autres cas, ce n'est pas cette commande qui est appelée ?

3) Pourquoi la commande "echo $PATH" ne renvoie pas les meme chemins sous PASE et QSH ?
Contenu du fichier .profile :
PATH=/QOpenSys/pkgs/bin:/QOpenSys/pkgs/lib/nodejs14/bin:$PATH
export PATH
LC_ALL=FR_FR.UTF-8
export LC_ALL
PS1='$PWD>'

4) Pourquoi avec une session SSH il ne m'affiche pas le même prompt que sous QSHELL et PASE ?
Sous SSH, on dirait que la variable $PWD n'existe pas ?

Merci d'avance.
Merci pour votre aide.
JYSA

nbonnet
Messages : 197
Enregistré le : mar. 11 sept. 2018, 08:20:13
Localisation : Lyon

Re: différences entre QSHELL /QPASE

Message par nbonnet »

Bonjour,

Voici la différence :
- QSH => interpréteur de commande "Linux" dans l'IBM i.
On utilise le système de fichier / (root). Ce dernier supporte les CSSID (cf propriétés sur un fichiers)

- PASE => (Portable Application Solution Environment) = l'interpréteur de commande AIX
On utilise le système de fichier /QOpenSys. Ce dernier ne connait pas les CCSID (il pense être sur un AIX, donc en ANSI)

Sous QSH : touch -C => fonctionne
Sous PASE : touch -C => paramètre -C non reconnu
Nathanaël

jysaulieres
Messages : 26
Enregistré le : ven. 26 oct. 2018, 09:58:31

Re: différences entre QSHELL /QPASE

Message par jysaulieres »

Bonjour,
Merci pour votre réponse, j'avais lu ces différences dans un (ancien) très bon article sur ce site.
Mais je ne comprends pas les différences au sein même de qshell et lors de l'execution des commandes qsh (&Commande), et egalement les utres différences.

Concernant la commande touch -C (de QSH) qui fonctionne : celle ci ne risque pas à terme d'etre remplacée et de ne plus fonctionner ? Vaut il mieux utiliser un touch classique puis de faire un chgatr *ccsid xxxx?
Merci
Merci pour votre aide.
JYSA

Répondre