試時(shí)間:2020年7月份
考試地點(diǎn):武漢
考試成績(jī):300分
300分成績(jī)截圖
以下是復(fù)學(xué)筆記,供參考,如有問(wèn)題和建議,歡迎留言!
隱含條件:YUM倉(cāng)庫(kù)已經(jīng)配置,IP也已經(jīng)配置
若無(wú)法使用ssh遠(yuǎn)程,說(shuō)明防火墻限制了ssh登陸
# firewall-cmd --list-all
# firewall-cmd --add-service=ssh 讓防火墻對(duì)ssh服務(wù)放行
## firewall-cmd --add-service=ssh --permanent 讓防火墻對(duì)ssh服務(wù)永久放行
:vim /etc/sysconfig/selinux
改為enforcing
:wq!
:setenforce 1 //在system1和system2上都做一次
:getenforce
# vim /etc/hosts.allow
sshd : .example.com
# vim /etc/hosts.deny
sshd : .my133t.org //在system1和system2上都做一次
//可以增加對(duì)SSH的規(guī)則:(man firewalld.richlanguage example4 )
: firewall-cmd --list-all
: firewall-cmd --add-rich-rule 'rule family="ipv4" source address="172.17.10.0/24" service name="ssh" reject' --permanent
: firewall-cmd --reload
: firewall-cmd --list-all
:nmcli connection modify eth0 ipv6.addresses fddb:fe2a:ab1e::c0a8:1/64 ipv6.method manual connection.autoconnect yes
:nmcli connection up eth0 //在system1和system2上都做一次,注意兩段ipv6地址不一樣,也可以是:nmcli connection up eth0
用server0來(lái)測(cè)試:if
# ping6 fddb:fe2a:ab1e::c0a8:2 //server0是1,desktop是2注意下
#ping desktop0
//man nmcli-examples|grep team
// man teamd.conf | grep backup
#nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'
//config后面這個(gè)在模板中可以找到:man teamd.conf里,查找example,按N下一個(gè),找到
"runner": {"name": "activebackup"}這個(gè)參數(shù)復(fù)制過(guò)來(lái),即可,
參考命令:man nmcli-examples | grep team |grep \$ man teamd.conf | grep backup
# nmcli connection modify team0 ipv4.addresses 192.168.0.101/24 ipv4.method manual connection.autoconnect yes
#nmcli connection add type team-slave con-name team0-s1 ifname eth1 master team0
#nmcli connection add type team-slave con-name team0-s2 ifname eth2 master team0
# nmcli connection modify team0-s1 connection.autoconnect yes
# nmcli connection modify team0-s2 connection.autoconnect yes
# nmcli connection show 查看一下
然后在desktop上做一樣的操作
測(cè)試:
在server上ping desktop的鏈路地址,一直ping
在desktop上:
# teamdctl team0 state 查看當(dāng)前狀態(tài)是幾網(wǎng)卡
#nmcli connection down team0-s1 //team0-s1是eth1網(wǎng)卡的意思
查看server0上ping是否斷掉,沒(méi)有斷則正常
最后把team0-s1再正常啟動(dòng)起來(lái),up一下。
#vim /etc/profile
alias qstat='/bin/ps -Ao pid,tt,user,fname,rsz'
#source /etc/profile
#qstat 測(cè)試一下
//也可以使用vim /etc/bashrc,使用profile在desktop0上執(zhí)行source命令時(shí)候可能會(huì)報(bào)錯(cuò),但是對(duì)bashrc則不會(huì)。
:# vim /etc/postfix/main.cf
切換到最后一行找到下面這個(gè)路徑
readme_directory=/usr/share/doc/postfix-2.10.1/README_FILES
新開(kāi)一個(gè)端口切換進(jìn)去
#cd /usr/share/doc/postfix-2.10.1/README_FILES
# vim STANDARD_CONFIGURATION_README 編輯STAN 用tab補(bǔ)齊
進(jìn)去后輸入 /null 找到下面幾個(gè)配置
3 myorigin=$mydomain
4 relayhost=$mydomain
5 inet_interfaces=loopback-only
6 mydestination=
復(fù)制到/etc/postfix/main.cf的最下面,
繼續(xù)在配置文件中尋找 /local ,找到下面這行
5 local_transport=error:local mail delivery is disabled 也復(fù)制過(guò)去,然后在/etc/postfix/main.cf中修改:
myorigin=example.com 修改這個(gè)域
relayhost=[classroom.example.com] 還有這個(gè),其他不用動(dòng),記得加個(gè)中括號(hào)
inet_interfaces=loopback-only
mydestination=
local_transport=error:local mail delivery is disabled
mynetworks=127.0.0.0/8 [::1]/128 額外添加一個(gè)網(wǎng)卡配置,不容易報(bào)錯(cuò)
:wq! 保存退出
記得兩邊都做一下,可以直接將這5條配置復(fù)制過(guò)去,不用修改,配置一樣
#systemctl restart postfix
#systemctl enable postfix
# firewall-cmd --add-service=smtp
# firewall-cmd --add-service=smtp --permanent 最好防火墻放行一下,以免出問(wèn)題
測(cè)試:
#mail -s test student@server0.example.com 這個(gè)test是郵件名稱
test
test2 這兩個(gè)test是隨便寫(xiě)的郵件 按CTRL+D結(jié)束寫(xiě)入。
# less /var/log/maillog 查看一下,按END鍵,在最后面能看到這個(gè)郵件就行了。
需要用防火墻的負(fù)規(guī)則來(lái)寫(xiě)
#man -k rich 這個(gè)用來(lái)找富規(guī)則的模板,若找不到,使用#mandb命令更新一下,即可!
firewalld.richlanguage (5) - Rich Language Documentation
# man firewalld.richlanguage //輸入example找模板,找到端口轉(zhuǎn)發(fā)的模板,應(yīng)該是標(biāo)識(shí)為 example 5的這一行!
將模板復(fù)制
#firewall-cmd --add-rich-rule 'rule family="ipv4" source address="172.25.0.0/24" forward-port to-port="80" protocol="tcp" port="5423"'
注意 改成ipv4,題目要求的,還有用’單引號(hào)’將模板標(biāo)識(shí)起來(lái)
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="172.25.0.0/24" forward-port to-port="80" protocol="tcp" port="5423"' --permanent
切記設(shè)置成自動(dòng)重啟的
簡(jiǎn)單分為6步驟
1、安裝服務(wù),samba,samba-client,2、創(chuàng)建所需要的用戶和目錄,3、修改配置、4,啟動(dòng)服務(wù)并設(shè)置開(kāi)機(jī)自啟,5,設(shè)置防火墻通行,6,客戶端檢測(cè)
# yum -y install samba samba-client
# useradd -s /sbin/nologin rob
# smbpasswd -a rob
# mkdir /common
# semanage fcontext -a -t samba_share_t '/common(/.*)?' 更改成這個(gè)share_t類(lèi)型 ,才可以訪問(wèn)這個(gè)目錄
# getsebool -a | grep samba_e 找到這個(gè)路徑
# setsebool -P samba_export_all_rw 1 -P是永久生效,1是開(kāi)機(jī)自啟,此步驟需要等待
# restorecon -v /common/ 查看一下,由原來(lái)的default改成了samba_share_t了
# vim /etc/samba/smb.conf
workgroup=STAFF 修改工作組, 可以直接搜索group
[common] 模板可以切換到配置文件最下面,有模板。
path=/common
browseable=yes
hosts allow=172.25.0.0/24
# systemctl enable smb nmb
# systemctl restart smb nmb
# firewall-cmd --add-service=samba --permanent
# firewall-cmd --add-service=samba
測(cè)試:在desktop上操作
# yum -y install cifs-utils.x86_64 samba-client.x86_64
# smbclient -L //server0/common -U rob%redhat
# mkdir /tmp/common 創(chuàng)建一個(gè)掛載點(diǎn)
# mount //server0/common /tmp/common/ -o username=rob,password=redhat 測(cè)試掛載一下
# touch /tmp/common/test 創(chuàng)建一個(gè)文件試試,創(chuàng)建失敗為正確,因?yàn)轭}目要求沒(méi)有寫(xiě)權(quán)限
# umount /tmp/common/ 取消掛載 ,完成
注://建議要保證用戶和desktop一致,以下操作可選
101 grep STAFF /etc/group
102 groupadd -r STAFF
103 id rob
104 useradd -u 1002 rob -s /sbin/nologin
105 usermod -G STAFF rob
106 mkdir /common
107 chown :STAFF -R /common/
108 chmod 2775 /common/
注://對(duì)齊用戶和組設(shè)置,注意客戶端和服務(wù)端要保持所屬的ID和組一致(usermod,groupmod通過(guò)1003過(guò)渡修改)
[root@server0 ~]# id brian
id: brian: no such user
[root@server0 ~]# useradd -u 1001 -s /sbin/nologin -G STAFF brian
# mkdir /devops
# useradd -s /sbin/nologin brian
# smbpasswd -a brian
# setfacl -m u:brian:rwx /devops/
# semanage fcontext -l|grep devops
# semanage fcontext -a -t samba_share_t '/devops(/.*)?'
# restorecon -v /devops/
# vim /etc/samba/smb.conf 在最后面添加下面參數(shù)
[devops]
path=/devops
browseable=yes
write list=brian
hosts allow=172.25.0.0/24
# systemctl restart smb nmb
接著在Desktop上操作。
# mkdir /mnt/multiuser 最好先下載samba-client 和cifs這軟件 ,以免掛載不上
在server上yum下載cifs-untils文件,需要用到配置文件
# yum -y install cifs-utils.x86_64
# man mount.cifs
輸出/crede 找下面這個(gè)模板
username=value
password=value
domain=value
切換回desktop
# vim /root/smb
username=rob
password=redhat
domain=STAFF
# vim /etc/fstab 其中需要的一些模板都在server上的 man mount.cifs 可以找到
//server0/devops /mnt/multiuser cifs credentials=/root/smb,sec=ntlmssp,_netdev,multiuser 0 0
#mount -a
在desktop上面測(cè)試
# su - rob
$ cifscreds add server0
$ touch /mnt/multiuser/sss
$ logout
# su - brian
$ cifscreds add server0
$ touch /mnt/multiuser/sss
$ logout
# chmod 400 /root/smb 測(cè)試,rob下不能創(chuàng)建,brian可以創(chuàng)建就是成功了
# yum -y install nfs-utils
# mkdir -p /protected/project
# mkdir /public
# chown -R ldapuser0 /protected/project
# vim /etc/exports
/public *.example.com(ro,sec=sys)
/protected *.example.com(rw,sec=krb5p,sync)
# systemctl enable nfs-server.service nfs-secure-server.service
# wget http://classroom.example.com/pub/keytabs/server0.keytab -O /etc/krb5.keytab 大寫(xiě)哦
# klist -k /etc/krb5.keytab 查看一下
# vim /etc/sysconfig/nfs
RPCNFSDARGS="-V 4.2" 在這一行添加 -V 4.2 ,直接在雙引號(hào)中添加即可
# systemctl restart nfs-server.service nfs-secure-server.service
# firewall-cmd --add-service=nfs
# firewall-cmd --add-service=nfs --permanent
# firewall-cmd --add-service=rpc-bind --permanent
# firewall-cmd --add-service=rpc-bind
# firewall-cmd --add-service=mountd
# firewall-cmd --add-service=mountd --permanent
在desktop0上查看
# showmount -e server0
# su - ldapuser0
# kinit server0
# touch test
# vim /etc/chrony.conf 確認(rèn)時(shí)間同步
server classroom.example.com iburst
# systemctl restart chronyd.service
# systemctl enable chronyd
一般都是默認(rèn)安裝的
//在desktop0上:
# mkdir -p /mnt/nfsmount /mnt/nfssecure
# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab
# klist -k /etc/krb5.keytab
# systemctl enable nfs-secure
# systemctl start nfs-secure.service
# vim /etc/fstab
server0.example.com:/public /mnt/nfsmount nfs sec=sys 0 0
server0.example.com:/protected /mnt/nfssecure nfs sec=krb5p,v4.2 0 0
# mount -a
# findmnt /mnt/nfsmount
# findmnt /mnt/nfssecure
# su - ldapuser0
$ kinit 密碼是kerberos
#df -Th 看到兩個(gè)目錄都掛載上就是對(duì)了
//如果mount有問(wèn)題,可能是時(shí)鐘同步的問(wèn)題,server和desktop都做一下。
# yum -y install httpd mod_ssl mod_wsgi 安裝所需要的安裝包
httpd是web,mod_ssl是安全web,mod_wsgi是動(dòng)態(tài)web
# wget http://classroom.example.com/materials/station.html -O /var/www/html/index.html
# cat /var/www/html/index.html
<h1 style="color:blue"> server0.example.com</h1>
# vim /etc/httpd/conf.d/vhost-server0.conf
新開(kāi)一個(gè)server0端口,找模板
# vim /etc/httpd/conf.d/ssl.conf 輸入 /Vir 找到后面帶著443的這個(gè)模板,
# vim /etc/httpd/conf/httpd.conf 然后在這個(gè)里面繼續(xù)找模板,搜索Directory,找到這個(gè)目錄
<VirtualHost _default_:80> 修改443端口為80端口
DocumentRoot /var/www/html 最好去掉引號(hào)。實(shí)際有沒(méi)有 無(wú)所謂
ServerName server0.example.com
<Directory /var/www/html> 這改成指定目錄
Require host example.com 這也要改一下
Require all denied
</Directory>
</VirtualHost>
:wq!
#systemctl restart httpd
#systemctl enable httpd
#firewall-cmd --add-service=http
#firewall-cmd --add-service=https
#firewall-cmd --add-service=http --permanent
#firewall-cmd --add-service=https --permanent
# curl http://server0.example.com
再開(kāi)一個(gè)server端,方便配置
# vim /etc/httpd/conf.d/ssl.conf 就這樣開(kāi)著不用動(dòng),千萬(wàn)別動(dòng)
在另外一個(gè)server端操作
# cat /etc/httpd/conf.d/vhost-server0.conf > /etc/httpd/conf.d/server0-ssl.conf
這里是方便模板cp。刪除一些沒(méi)用的,其他的從SSL開(kāi)始 都是在另外那個(gè)打開(kāi)配置文件的server端里面去找模板復(fù)制
# vim /etc/httpd/conf.d/server0-ssl.conf
<VirtualHost _default_:443>
DocumentRoot /var/www/html
ServerName server0.example.com
SSLEngine on 從這開(kāi)始找模板
SSLProtocol all -SSLv2 -SSLv3 多加一個(gè)v3
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLHonorCipherOrder on
SSLCertificateFile /etc/pki/tls/certs/server0.crt 結(jié)尾的名字和題目上模板名字一樣,比較方便
SSLCertificateKeyFile /etc/pki/tls/private/server0.key
SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt
</VirtualHost>
:wq!
# cat /etc/httpd/conf.d/server0-ssl.conf
# wget http://classroom.example.com/pub/tls/certs/server0.crt -O /etc/pki/tls/certs/server0.crt
# wget http://classroom.example.com/pub/tls/private/server0.key -O /etc/pki/tls/private/server0.key
# wget http://classroom.example.com/pub/example-ca.crt -O /etc/pki/tls/certs/example-ca.crt
# chmod 600 /etc/pki/tls/private/server0.key
# systemctl restart httpd
驗(yàn)證:
[root@desktop0 ~]# curl http://server0.example.com -k
<h1 style="color:blue"> server0.example.com</h1>
顯示出來(lái)就表示成功了
#mkdir /var/www/virtual
#wget http://classroom.example.com/materials/www.html -O /var/www/virtual/index.html
#useradd floyd
#setfacl -m u:floyd:rwx /var/www/virtual/
#vim /etc/httpd/conf.d/vhost-www0.conf
<VirtualHost _default_:80>
DocumentRoot /var/www/virtual
ServerName www0.example.com
<Directory /var/www/virtual>
Require all granted
</Directory>
</VirtualHost>
#systemctl restart httpd.service
#curl http://www0.example.com
能出來(lái)就對(duì)了
# mkdir /var/www/html/private
# wget http://classroom.example.com/materials/private.html -O /var/www/html/private/index.html
# vim /etc/httpd/conf.d/vhost-server0.conf
添加下面這些
<Directory /var/www/html/private>
Require all denied
Require local
</Directory>
# systemctl restart httpd
測(cè)試:
[root@server0 ~]# curl http://server0.example.com/private/index.html
[root@desktop0 ~]# curl http://server0.example.com/private/index.html
考試時(shí)候不確定是server0做還是www做,所以盡量都做一遍,就把上面3條命令中的html都改為virtual就可以,編輯中的html也改成virtual,重啟一下httpd就可以。
# mkdir -p /var/www/webapp
# wget http://classroom.example.com/materials/webinfo.wsgi -O /var/www/webapp/webinfo.wsgi
# cat /var/www/webapp/webinfo.wsgi
# semanage port -l | grep http
# semanage port -a -t http_port_t -p tcp 8908 //需要一定時(shí)間
# firewall-cmd --add-port=8908/tcp
# firewall-cmd --add-port=8908/tcp --permanent
# cat /etc/httpd/conf.d/vhost-server0.conf > /etc/httpd/conf.d/webapp.conf
# vim /etc/httpd/conf.d/webapp.conf
Listen 8908
<VirtualHost _default_:8908>
ServerName webapp0.example.com
WSGIScriptAlias / /var/www/webapp/webinfo.wsgi
</VirtualHost>
# systemctl restart httpd
# curl http://webapp0.example.com:8908 只要出結(jié)果就對(duì),或者網(wǎng)頁(yè)firefox也訪問(wèn)一下,刷新幾次,顯示結(jié)果不同就是對(duì)了
# vim /root/foo.sh
#!/bin/bash
case in
redhat)
echo "fedora"
;;
fedora)
echo "redhat"
;;
*)
echo "/root/foo.sh redhat|fedora"
;;
esac
# chmod 755 /root/foo.sh
測(cè)試:
# /root/foo.sh
/root/foo.sh redhat|fedora
# /root/foo.sh redhat
fedora
# /root/foo.sh fedora
redhat
:vim /root/batchusers
#!/bin/bash
if [ $# -eq 0 ];then
echo "Usage: /root/batusers userfile"
exit 1
elif [ ! -e ];then
echo "Input file not found"
exit 2
else
for name in $(cat );
do
useradd -s /bin/false $name
echo redhat | passwd --stdin $name
done
fi
# chmod +x /root/batchusers
#wget http://classroom.example.com/materials/userlist
#cat /root/userlist 看看有沒(méi)有用戶名,有就是下載對(duì)了
驗(yàn)證:
#/root/batchusers
Usage: /root/batusers userfile
#/root/batchusers /root/user 這是個(gè)不存在的文件
Input file not found
#/root/batchusers /root/userlist 顯示一大堆success就行了
# yum -y install targetcli.noarch
# fdisk /dev/vdb 考試應(yīng)該只有vda一塊盤(pán),道理一樣
n-p- +4G-t-8e-w
# partprobe
# vgcreate iscsi_store /dev/vdb1
# lvcreate -L 3G -n iscsi_store iscsi_store
# targetcli
/> ls
/> /backstores/block create iscsi_store /dev/iscsi_store/iscsi_store
/> ls
/> /iscsi create iqn.2014-11.com.example:server0
/> ls
/> cd iscsi/iqn.2014-11.com.example:server0/tpg1/
/> ls
/iscsi/iqn.20...:server0/tpg1> acls/ create iqn.2014-11.com.example:desktop0
/> ls
/iscsi/iqn.20...:server0/tpg1> luns/ create /backstores/block/iscsi_store
/> ls
/iscsi/iqn.20...:server0/tpg1> portals/ create 172.25.0.11
/> ls
/iscsi/iqn.20...:server0/tpg1> cd /
/> saveconfig
/> exit
# systemctl enable target.service
# systemctl start target.service
#firewall-cmd --add-port=3260/tcp
#firewall-cmd --add-port=3260/tcp --permanent
# yum -y install iscsi-initiator-utils.i686 //安裝服務(wù)需要一定時(shí)間
# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2014-11.com.example:desktop0 //這個(gè)iqn一定要和服務(wù)端的那個(gè)iqn一模一樣,不然會(huì)出大問(wèn)題
# systemctl enable iscsi
# systemctl start iscsi
# systemctl enable iscsid
# systemctl restart iscsid
# iscsiadm -m discovery -t st -p server0.example.com
172.25.0.11:3260,1 iqn.2014-11.com.example:server0 發(fā)現(xiàn)成功 //可以通過(guò)man iscsiadm /example來(lái)查找命令
# iscsiadm -m node -T iqn.2014-11.com.example:server0 -l 顯示success為登陸成功,如果不顯示,也是成功
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 3G 0 disk 能看到sda就對(duì)了
#mkdir /mnt/data
# fdisk /dev/sda
n-回車(chē)-回車(chē)- +2100M -w
# partprobe
# lsblk
# mkfs.ext4 /dev/sda1
# blkid /dev/sda1
/dev/sda1: UUID="dd977546-aa74-4bdf-bab5-ee0ba3f6b85d" TYPE="ext4"
# vim /etc/fstab
UUID="dd977546-aa74-4bdf-bab5-ee0ba3f6b85d" /mnt/data ext4 _netdev 0 0
#mount -a
#systemctl enable iscsi
#systemctl restart iscsi
#systemctl enable iscsid
#systemctl restart iscsid
# df -Th
如果重啟不了
第一方法:
先把客戶端關(guān)機(jī),再把服務(wù)端重啟一下,然后再啟動(dòng)客戶端
第二方法
重啟如果起不來(lái),進(jìn)入grub界面,和破解密碼一樣,在#chroot /sysroot之后,進(jìn)入vim /etc/fstab后把iscsi自動(dòng)掛載注釋后重啟。
重啟后再次進(jìn)行發(fā)現(xiàn),登陸,lsblk,能看到掛載上來(lái)就不管了。自動(dòng)掛載的注釋就注釋吧
# yum -y install mariadb*
# systemctl enable mariadb.service
# systemctl start mariadb.service
# firewall-cmd --add-service=mysql
# firewall-cmd --add-service=mysql --permanent
# mysql_secure_installation
回車(chē)>Y>輸入題目要求的密碼>全部是Y就行了
# vim /etc/my.cnf
插入一行
skip-networking=1
# systemctl restart mariadb.service
# wget http://content.example.com/courses/rhce/rhel7.0/materials/mariadb/mariadb.dump
# mysql -uroot -proot_password
> create database legacy;
> show databases;
>quit
# mysql -uroot -proot_password legacy < mariadb.dump
# mysql -uroot -proot_password
MariaDB [(none)]> use legacy;
MariaDB [legacy]> show tables;
> grant select on legacy.* to mary@'%' identified by 'mary_password';
> grant select,insert,update,delete on legacy.* to legacy@'%' identified by 'legacy_password';
> grant select on legacy.* to report@'%' identified by 'report_password';
%可以換成:localhost,如:
> grant select on legacy.* to mary@'localhost' identified by 'mary_password';
MariaDB [legacy]> show tables;
MariaDB [legacy]> select * from product;
MariaDB [legacy]> select id,name from product where name='RT-AC68U';
這樣會(huì)查看到數(shù)值id,然后登陸網(wǎng)址,將數(shù)值寫(xiě)上去。
MariaDB [legacy]> select * from category;
可以看到servers對(duì)應(yīng)id是多少,此處對(duì)應(yīng)是2
> select sum(stock) from product where id_category=2;
將數(shù)值填寫(xiě)即可完成
最后先將客戶端關(guān)機(jī),關(guān)機(jī)后直接重啟服務(wù)端 等服務(wù)端起來(lái) 先systemctl status nfs 先看nfs狀態(tài)
等nfs狀態(tài)起來(lái)后,在啟動(dòng)客戶端
//查看日志 vim /var/logs/message 或者 tail /var.logs/message -n 40
//常見(jiàn)操作命令:dd 刪除一行,ESC + U 撤銷(xiāo),G 定位到末尾
//重啟操作:server 和 desktop 都用 init 6,init 6 會(huì) 保存一些系統(tǒng)狀態(tài)
好程序員web前端分享使用JavaScript正則表達(dá)式如何去掉雙引號(hào),最近接了一個(gè)項(xiàng)目,項(xiàng)目需求需要用js正則表達(dá)式過(guò)濾掉頁(yè)面文本域中值得雙引號(hào),其實(shí)解決辦法很簡(jiǎn)單,下面把我寫(xiě)的代碼分享給大家,有同樣需求的朋友可以參考下。
具體的解決代碼如下:
<html>
<script language="javascript">
//var pattern=/[^"]*/; //校驗(yàn)字符串中是否都是非雙引號(hào)的字符
var pattern=/["]+/; //校驗(yàn)字符串中是否有雙引號(hào)的字符
//var pattern=/["][^"]*["]/ //匹配的是位于單引號(hào)或者雙引號(hào)之內(nèi)的0個(gè)或多個(gè)字符
var value1="The best things in life are free"; //沒(méi)有雙引號(hào)的字符串
var value2="/"/"The /"best things /"in life are free/"/""; //有雙引號(hào)的字符串
alert("value1沒(méi)有雙引號(hào)的字符串 pattern.exec_1===" + pattern.exec(value1)); //null
alert("value1沒(méi)有雙引號(hào)的字符串 !pattern.exec_2===" + !pattern.exec(value1)); //true
alert("value2有雙引號(hào)的字符串 pattern.exec_1===" + pattern.exec(value2)); //""
alert("value2有雙引號(hào)的字符串 !pattern.exec_2===" + !pattern.exec(value2)); //false
if(pattern.exec(value1)){ //校驗(yàn)字符串中是否都是非雙引號(hào)的字符
alert("value1 沒(méi)有加非號(hào) ++++++雙引號(hào)被匹配上");
}
if(!pattern.exec(value1)){ //校驗(yàn)字符串中是否有雙引號(hào)的字符
alert("value1 有加非號(hào) ++++++雙引號(hào)被匹配上"); //頁(yè)面窗口彈出
}
if(pattern.exec(value2)){ //校驗(yàn)字符串中是否都是非雙引號(hào)的字符
alert("value2 沒(méi)有加非號(hào) ++++++雙引號(hào)被匹配上"); //頁(yè)面窗口彈出
}
if(!pattern.exec(value2)){ //校驗(yàn)字符串中是否有雙引號(hào)的字符
alert("value2 有加非號(hào) ++++++雙引號(hào)被匹配上");
}
</script>
</html>
ello大家好,我是幫幫。今天跟大家分享一下Excel批量刪除單元格數(shù)字單引號(hào),文本格式快速轉(zhuǎn)換,輕松不操心。
有個(gè)好消息!為了方便大家更快的掌握技巧,尋找捷徑。請(qǐng)大家點(diǎn)擊文章末尾的“了解更多”,在里面找到并關(guān)注我,里面有海量各類(lèi)模板素材免費(fèi)下載,我等著你噢^^<——非常重要!!!
メ大家請(qǐng)看范例圖片,Excel批量刪除單元格單引號(hào),某些單元格數(shù)據(jù),在編輯欄發(fā)現(xiàn)數(shù)字前面有單引號(hào),并且有小三角提示。メ
メ這種單元格的數(shù)字為文本格式,不能進(jìn)行單元格函數(shù)計(jì)算。メ
メ我們可以批量選擇帶有小三角單元格的數(shù)據(jù),直接點(diǎn)擊左上角綠色提示符選項(xiàng),選擇轉(zhuǎn)換為數(shù)字。メ
メ調(diào)整格式后的單元格數(shù)字變?yōu)檎8袷?,可以進(jìn)行函數(shù)統(tǒng)算。メ
メ第二種方法,直接選擇C了——數(shù)據(jù)——分列——直接點(diǎn)擊完成。メ
メ這種方法也可能快速的分列成數(shù)字格式,函數(shù)能正常運(yùn)算。メ
メ第三種方法,可以在任意空白單元格輸入數(shù)字1——復(fù)制——框選C列單元格區(qū)域——右鍵選擇性粘貼。メ
メ選擇乘。メ
メ單元格文本直接轉(zhuǎn)換為數(shù)字,快捷簡(jiǎn)單,三種方法學(xué)習(xí)套用,大家趕緊學(xué)起來(lái)。メ
下載方法!幫幫將每天定時(shí)更新各種模板素材,獲取方式。
1、請(qǐng)?jiān)谠u(píng)論區(qū)評(píng)論+點(diǎn)贊^o^
2、點(diǎn)擊關(guān)注,關(guān)注本頭條號(hào)
3、進(jìn)入頭條號(hào)頁(yè)面,右上角私信功能,私信回復(fù)“表格”,直接獲取各類(lèi)素材。
*請(qǐng)認(rèn)真填寫(xiě)需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。